- 博客(26)
- 收藏
- 关注
原创 Elasticsearch学习
Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎。Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。但是,Lucene只是一个库。想要发挥其强大的作用,你需使用Java并要将其集成到你的应用中。Elasticsearch是使用Java编写并使用Lucene来建立索引并实现搜索功能,但是它的目的是通过简单连贯的RESTful API让全文搜索变得简单并隐藏Lucene的复杂性。
2023-09-01 11:59:09
107
原创 docker学习
Docker是一种开源的容器化平台,可用于构建、部署和运行应用程序。它使用容器技术,将应用程序及其依赖项打包在一个独立的、可移植的容器中,以便在不同的环境中运行。一次构建、随处运行1. 应用程序的快速部署和交付:Docker可以将应用程序及其依赖项打包成一个独立的容器,使应用程序在不同的环境中具有一致的运行方式,简化了应用程序的部署和交付过程。2. 资源的高效利用:Docker可以在宿主机上运行多个独立的容器,每个容器都是相互隔离的,可以有效地利用宿主机的资源,提高资源利用率。
2023-09-01 10:56:01
198
原创 redis学习
Redis是一个开源的key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,Redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。
2023-08-23 21:31:24
711
原创 No package http-tools-y available.
可以尝试:yum --disableexcludes=all install -y httpd。出现 No package http-tools-y available.安装 httpd-tools。
2023-08-23 20:19:08
217
原创 spring入门
8. Spring Cloud:用于构建分布式系统的模块,提供了服务发现、负载均衡、配置管理等功能,简化了微服务架构的开发和部署。1. 松耦合:通过依赖注入,对象之间的依赖关系由容器负责管理,减少了对象之间的耦合,提高了代码的可维护性和可测试性。6. Spring Batch:用于批处理任务的模块,提供了处理大量数据的能力,可以执行复杂的数据转换和处理操作。3. 生命周期管理:容器可以管理对象的生命周期,包括对象的创建、初始化、销毁等,确保对象在正确的时间被创建和释放。
2023-08-18 11:26:46
75
原创 Mybatis学习
此时就可以实现按需加载,获取的数据是什么,就只会执行相应的sql。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。一级缓存是SqlSession级别的,通过同一个SqlSession查询的数据会被缓存,下次查询相同的数据,就会从缓存中直接获取,不会从数据库重新访问。mapper接口中方法的方法名和映射文件中编写SQL的标签的id属性保持一致。
2023-07-31 19:56:12
646
1
原创 数据库相关概念
这种隔离级别避免了不可重复读,但可能出现幻读,例 T2对数据表中的数据进⾏修 改然后查询,在查询之前T1向数据表中新增了⼀条数据,就导致T2以为修改了所有数据,但却查询出了与修改不⼀致的数据(T1事务新增的数据)• 原⼦性(Atomicity):⼀个事务中的多个DML操作,要么同时执⾏成功,要么同时执⾏失败。如果事务中的任何一个操作失败,所有操作都会被回滚,使数据库恢复到执行事务前的状态。• ⼀致性(Consistency):事务执⾏之前和事务执⾏之后,数据库中的数据是⼀致的,完整性和 ⼀致性不能被破坏。
2023-07-12 20:09:15
174
1
原创 MySQL学习
创建数据库创建数据库create database 库名;创建数据库,当指定名称的数据库不存在时执行创建create database if not exists 库名;在创建数据库的同时指定数据库的字符集(字符集:数据存储在数据库中采用的编码格式 utf8mb4、gbk)create database 库名 character set 字符集;修改数据库字符集修改数据库的字符集alter database 库名 character set 字符集;删除数据库删除数据库。
2023-07-10 21:22:53
353
1
原创 MVC和三层架构学习
业务逻辑层负责处理来自表示层的请求,并通过操作数据层来执行相应的业务逻辑。它在业务逻辑层的指导下,提供数据的持久化和操作功能。MVC的目的是将应用程序的不同部分分离开来,以便实现更好的模块化、可维护性和可扩展性。通过将应用程序划分为不同的层次,每个层次专注于特定的功能和责任,使得代码更加模块化、可复用和易于理解。3. 控制器(Controller):它连接模型和视图,并负责处理用户的输入和调度相应的操作。2. 视图(View):它负责展示模型中的数据给用户,并接收用户的输入。
2023-07-07 17:00:27
214
1
原创 JavaWeb学习
ServletContext是一个接口,它表示Servlet上下文对象。一个Web工程,只有一个ServletContext对象实例。ServletContext对象是一个域对象。ServletContext是在Web工程部署启动的时候创建,在Web工程停止的时候销毁。
2023-07-05 14:42:58
658
原创 Servlet学习
Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。Servlet 的主要功能在于交互式地浏览和修改数据,生成动态 Web 内容。客户端发送请求至服务器端;服务器将请求信息发送至 Servlet;Servlet 生成响应内容并将其传给服务器。响应内容动态生成,通常取决于客户端的请求;服务器将响应返回给客户端。
2023-06-29 12:22:49
81
原创 Java总结(下)
这种方式是直接将字符串 "Hello World" 赋值给变量 a,可以理解为变量 a 指向了一个字符串常量,这个字符串常量在编译时期就被创建并固定不变。因为字符串常量在 Java 中是共享的,所以这种方式比较高效。这种方式是使用 new 关键字创建一个新的字符串对象,并将其赋值给变量 a。因为字符串对象是动态创建的,所以在运行时期每次都会创建一个新的字符串对象。1> StringBuffer 类用于操作字符串对象,可以动态增加、修改和删除字符串的内容。中的键和值都可以重复出现,而。HashMap不安全。
2023-06-24 16:15:41
63
1
原创 java学习总结(上)
计算机软件是计算机硬件上运行的各种程序、数据和文档的集合。计算机软件可以 被分为两大类:系统软件和应用软件。其中,系统软件主要包括操作系统、编译器、驱动程序等,而应用软件则包括各种应用程序,比如浏览器、游戏、办公软件等。
2023-06-16 16:36:40
238
原创 Map接口
这个接口为一个独立的父接口,并且在进行接口对象实例化的时候需要设置 Key 与 Value的类型,也就是说在整个操作的时候保存两个内容,在Map接口里面定义了许多的操作方法,但是需要记住的常用的也就几个:在Map集合中数据的保存是按照“key=value”的形式保存的,并且使用不允许有重复数据。一,HashMap子类定义:classHashMapextendsimplementsMapput方法即便保存数据的key有重复也不会发生错误,而是出现内容的替换。
2023-06-14 19:48:58
96
1
原创 java 类集合
Vector类同样采用数组模式 如果使用的是无参构造方法,一定会默认开辟一个10个长度的数组,而后其余的实现操作与 ArrayList是相同的,通过源代码的分析可以发现 Vector类之中的操作方法采用的都是synchronized同步处理,而ArrayList并没有采用同步处理,所以 Vector类之中的方法在多线程访问的时候属于线程安全的,但是性能没有 ArrayList好。HashSet子类:最大的特点就是保存的数据是无序的。TreeSet子类:里面保存的数据是有序的。List 存储的特征。
2023-06-13 20:56:57
124
1
原创 Java进程
在守护线程中,编写代码的时候要注意:守护线程不能持有任何需要关闭的资源,例如打开文件等,因为虚拟机退出时,守护线程没有任何机会来关闭文件,这会导致数据丢失。例如播放电影时,就必须由一个线程播放视频,另一个线程播放音频,两个线程需要协调运行,否则画面和声音就不同步,因此,多线程编程的复杂度高,调试也比较困难。Java 语言内置了多线程的支持,当Java程序启动的时候,实际上是启动了一个JVM进程,然后启动主线程执行main()方法,在main()方法中,我们又可以启动其他线程。
2023-06-09 19:11:46
596
原创 java泛型
extends Number”:表示该泛型类型值允许设置Number或Number的子类。super String”:表示只能够使用 String 或其父类。super类:设置泛型的下限。
2023-06-05 20:16:12
69
1
原创 java多态
Java的多态机制就是同样的方法名在不同的类中可以有不同的行为。主要体现在方法的多态即重写和重载和对象的多态即向上转型和向下转型,还有接口和抽象类增强程序的可靠性。this()调用本类的构造方法//构造方法必须在实例化新对象的时候调用,所以“this()”的语句只允许放在构造方法的首行。 抽象类中的抽象方法和接口中的方法都必须被所继承或实现的子类重写。重载是一个类种定义的方法,虽然名字相同但是参数的类型,数量,顺序及返回值类型可以不同。this.方法名()调用本类中的普通方法。
2023-06-03 17:20:56
74
原创 java接口
接口可以理解为一个纯粹的抽象类(最原始的定义接口之中是只包含有抽象方法与全局常量),但是从 JDK1.8 开始由于引入了 Lambda 表达式,所以接口的定义也得到了加强,除了抽象方法与全局常量之外,还可以定义普通方法和静态方法,如果从设计本身的角度来讲,接口之中的组成还是应该以抽象方法和全局常量为主。2.代理模式:一个接口被两个类实现,一个是真是业务操作另一个是代理业务操作,调用时只需调用代理类。注:实现接口的有可能是抽象类,一个抽象类可以实现多个接口,而一个普通类只能够继承一个抽象类。
2023-05-31 19:40:45
73
1
原创 abstract抽象类
4.抽象类是作为一个普通类的加强版出现的(抽象类的组成就是在普通类的基础上扩展而来的,只是增加了抽象方法),既然是在普通类上扩展的,那么普通类之中就可以定义属性和方法,那么这些属性一定是要求进行内存空间开辟的,所以抽象类一定可以提供有构造方法,并且子类也一定会按照子类对象的实例化原则进行父类的调用。1.从整体上来看,抽象类只是比普通类增加了抽象方法以及对子类强制性的覆写要求而已,其他的使用过程和传统的类继承是完全相同的。抽象类的子类(不是抽象类)一定要覆写抽象类中的全部抽象方法。
2023-05-30 10:26:26
61
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人