- 博客(35)
- 收藏
- 关注
原创 Stream流
案例需求按照下面的要求完成集合的创建和遍历创建一个集合,存储多个字符串元素把集合中所有以"张"开头的元素存储到一个新的集合把"张"开头的集合中的长度为3的元素存储到一个新的集合遍历上一步得到的集合原始方式示例代码。
2023-11-06 17:17:37
163
原创 Set集合
底层数据结构是哈希表存取无序不可以存储重复元素没有索引,不能使用普通for循环遍历//创建集合对象//添加元素//不包含重复元素的集合//遍历HashSet集合存储自定义类型元素,要想实现元素的唯一,要求必须重写hashCode方法和equals方法不可以存储重复元素没有索引可以将元素按照规则进行排序TreeSet():根据其元素的自然排序进行排序TreeSet(Comparator comparator) :根据指定的比较器进行排序。
2023-11-06 12:23:48
149
原创 比较器comparable
两种比较方式小结自然排序: 自定义类实现Comparable接口,重写compareTo方法,根据返回值进行排序比较器排序: 创建TreeSet对象的时候传递Comparator的实现类对象,重写compare方法,根据返回值进行排序在使用的时候,默认使用自然排序,当自然排序不满足现在的需求时,必须使用比较器排序两种方式中关于返回值的规则如果返回值为负数,表示当前存入的元素是较小值,存左边如果返回值为0,表示当前存入的元素跟集合中元素重复了,不存。
2023-11-06 12:14:23
148
原创 泛型 --
泛型是JDK5中引入的特性,它提供了编译时类型安全检测机制<类型>: 指定一种类型的格式.尖括号里面可以任意书写,一般只写一个字母.例如: <E> <T><类型1,类型2…>: 指定多种类型的格式,多种类型之间用逗号隔开.例如: <E,T> <K,V>
2023-11-02 17:47:05
89
原创 ArrayList,HashMap,LinkedList,Hashtable初始化大小和扩容机制
扩容机制.(当前大小 和 当前容量 的比例超过了 扩容因子,就会扩容,扩容后大小为 一倍。例如:初始大小为 16 ,扩容因子 0.75 ,当容量为12的时候,比例已经是0.75。ArrayList 初始化大小是 10 (如果你知道你的arrayList 会达到多少容量,可以在初始化的时候就指定,能节省扩容的性能开支)HashMap 初始化大小是 16 ,扩容因子默认0.75(可以指定初始化大小,和扩容因子)扩容增量:2*原数组长度+1,如 HashTable的容量为11,一次扩容后是容量为23。
2023-10-31 15:05:39
395
原创 List集合
List集合的概述有序集合,这里的有序指的是存取顺序用户可以精确控制列表中每个元素的插入位置,用户可以通过整数索引访问元素,并搜索列表中的元素与Set集合不同,列表通常允许重复的元素List集合的特点存取有序可以重复有索引。
2023-10-31 01:06:53
76
原创 java集合--Collection接口
Collection集合概述是单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素JDK 不提供此接口的任何直接实现.它提供更具体的子接口(如Set和List)实现创建Collection集合的对象多态的方式具体的实现类ArrayList。
2023-10-28 00:52:29
73
原创 java--基础集合
集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类。数组的长度是不可变的,集合的长度是可变的。数组可以存基本数据类型和引用数据类型。都是容器,可以存储多个数据。
2023-10-28 00:22:46
59
原创 Redis入门
Redis数据类型5种常用数据类型介绍各种数据类型的特点Redis常用命令字符串操作命令哈希操作命令列表操作命令集合操作命令有序集合操作命令通用命令
2023-10-27 20:22:09
79
原创 @SpringBootApplication
比如我们引入了spring-boot-starter-web,而这个启动器中帮我们添加了tomcat、SpringMVC的依赖,此时自动配置就知道你是要开发一个web应用,所以就帮你完成了web及SpringMVC的默认配置了!@Configuration这个注解的作用就是声明当前类是一个配置类,然后Spring会自动扫描到添加了@Configuration的类,读取其中的配置信息,而@SpringBootConfiguration是来声明当前类是SpringBoot应用的配置类,项目中只能有一个。
2023-10-26 09:29:06
72
原创 反射练习--案例
private修饰value而且没有对外提供getvalue和setvalue的方法。所以,在外界不能获取或修改value记录的地址值。集合中的泛型只在java文件中存在,当编译成class文件之后,就没有泛型了。需求: 利用反射根据文件中的不同类名和方法名,创建不同的对象并调用方法。字符串,在底层是一个byte类型的字节数组,名字叫做value。final修饰value表示value记录的地址值不能修改。在这个练习中,我需要你掌握的是字符串不能修改的真正原因。⑤通过Class对象得到方法。
2023-10-25 23:49:49
69
原创 java基础--反射
是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意属性和方法;这种动态获取信息以及动态调用对象方法的功能称为Java语言的反射机制。通俗的理解:(掌握)利用反射创建的对象可以无视修饰符调用类里面的内容可以跟配置文件结合起来使用,把要创建的对象信息和方法写在配置文件中。读取到什么类,就创建什么类的对象读取到什么方法,就调用什么方法此时当需求变更的时候不需要修改代码,只要修改配置文件即可。
2023-10-25 23:34:11
81
原创 spring boot ---AOP
动态代理是面向切面编程最主流的实现。而SpringAOP是Spring框架的高级技术,旨在管理bean对象的过程中,主要通过底层的动态代理机制,对特定的方法进行编程。
2023-10-25 08:33:01
100
1
原创 spring boot ----事务管理
默认情况下,只有出现 RuntimeException 才回滚异常。rollbackFor属性用于控制出现何种异常类型,回滚事务。作用:将当前方法交给spring进行事务管理,方法执行前,开启事务;成功执行完毕,提交事务;事务传播行为:指的就是当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行事务控制。位置:业务(service)层的方法上、类上、接口上。插件Grep Console高亮展示。注解:@Transactional。propation属性值。
2023-10-18 21:01:53
138
原创 spring boot ---令牌技术
全称:JSON Web Token (https://jwt.io/)定义了一种简洁的、自包含的格式,用于在通信双方以json数据格式安全的传输信息。由于数字签名的存在,这些信息是可靠的。组成: 第一部分:Header(头), 记录令牌类型、签名算法等。例如:{"alg":"HS256","type":"JWT"}第二部分:Payload(有效载荷),携带一些自定义信息、默认信息等。例如:{"id":"1","username":"Tom"}
2023-10-18 20:36:31
134
原创 spring boot案例 ---异常处理
ResponseBody将返回数据转换成JSON。程序开发过程中不可避免的会遇到异常现象。定义一个全局异常处理器。
2023-10-18 20:36:08
101
原创 mybatis----条件查询
第一种接口方法使用拼接字符串的方法${}来拼接name,有缺点sql函数第二中接口方法使用#{}可行规范XML映射文件的名称与Mapper接口名称一致,并且将XML映射文件和Mapper接口放置在相同包下(同包同名)。XML映射文件的namespace属性为Mapper接口全限定名一致。XML映射文件中sql语句的id与Mapper 接口中的方法名一致,并保持返回类型一致。1.xml约束namespace="mapper包的地址"id="mapper中对应的方法名"
2023-10-18 11:11:27
564
原创 Mybatis--基础操作增删改查
准备工作准备数据库表 emp创建一个新的springboot工程,选择引入对应的起步依赖(mybatis、mysql驱动、lombok)application.properties中引入数据库连接信息创建对应的实体类 Emp(实体类属性采用驼峰命名)准备Mapper接口 EmpMappercontrolar层service层接口实现类mapper层实体对象sql预编译。
2023-10-17 21:26:40
64
原创 数据库连接池
Lombok是一个实用的Java类库,能通过注解的形式自动生成构造器、getter/setter、equals、hashcode、toString等方法,并可以自动化生成日志变量,简化java开发、提高效率。官方地址:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter。切换Druid数据库连接池。
2023-10-17 20:56:15
72
原创 spring boot---分层解耦
前面声明bean的四大注解,要想生效,还需要被组件扫描注解@ComponentScan扫描。@ComponentScan注解虽然没有显式配置,但是实际上已经包含在了启动类声明注解 @SpringBootApplication 中,默认扫描的范围是启动类所在包及其子包。容器为应用程序提供运行时,所依赖的资源,称之为依赖注入。声明bean的时候,可以通过value属性指定bean的名字,如果没有指定,默认为类名首字母小写。Bean对象:IOC容器中创建、管理的对象,称之为bean。service实现类。
2023-10-17 20:25:38
132
原创 springboot--响应
Springboot项目的静态资源(html,css,js等前端资源)默认存放目录为:classpath:/static 、 classpath:/public、 classpath:/resources。作用:将方法返回值直接响应,如果返回值类型是 实体对象/集合 ,将会转换为JSON格式响应 说明:@RestController = @Controller + @ResponseBody;位置:Controller方法上/类上。类型:方法注解、类注解。
2023-10-17 19:42:00
143
原创 springboot---请求
RequestParam中的required属性默认为true,代表该请求参数必须传递,如果不传递将报错。JSON数据键名与形参对象属性名相同,定义POJO类型形参即可接收参数,需要使用 @RequestBody 标识。}来标识该路径参数,需要使用 @PathVariable 获取路径参数。简单参数:如果方法形参名称与请求参数名称不匹配,可以使用 @RequestParam 完成映射。集合参数:请求参数名与形参集合名称相同且请求参数为多个,@RequestParam 绑定参数关系。
2023-10-17 17:31:58
106
原创 Http协议---Get请求和Post请求
GET方法的应用在Web应用程序中,GET方法常用于以下场景:POST方法的应用在Web应用程序中,POST方法常用于以下场景:
2023-10-17 16:35:51
89
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅