- 博客(19)
- 收藏
- 关注
原创 二级缓存详解
/ 订单信息经常变化。eviction = LruCache.class, // 缓存淘汰策略。public class User implements Serializable { // 正确。// 会抛出序列化异常。eviction = LruCache.class // 使用 LRU 淘汰策略。// 每次都会查询数据库。@Options(useCache = false) // 不使用缓存。@Options(useCache = true) // 使用缓存。
2025-06-17 21:03:34
1471
原创 idel测试方法时,输入不了数据或者this view read-only
怎么按键盘都没反应。既然·测试方法中不行,放入main方法试试,可以看到放入main方法里可以运行。总结:测试方法里不能使用输入。
2025-06-17 11:00:37
352
原创 使用@value注解时 Could not resolve placeholder ‘xxx‘ in value “${xxx}“
配置好yaml,属性后,将属性引入bean,运行时出现Could not resolve placeholder 'xxx' in value "${xxx}",指定之后就按住ctrl加点击就能找到了,再试一下。看到拿到sheep对象了。这时想起,它到底要用谁得name,原来要指定用谁的属性。尝试点击name时,发现找不到name。
2025-06-16 16:33:28
881
原创 spring boot整合mybatis出现 Invalid value type for attribute ‘factoryBeanObjectType‘
总结:在整合mybatis的时候,最好使用稳定版本,除此之外启动类要放在当前包下,因为spring扫描的是当前包及其子包,最后记得检查数据源配置。原因:Spring 期望 factoryBeanObjectType 是一个 Class 类型,但实际传入的是 String 类型。切换为稳定版本spring-boot-starter-parent 3.2.3即可。找了半天才发现用的spring boot版本过高导致的。运行成功后,地址栏查询。发现问题已经解决了。
2025-06-16 11:29:59
328
原创 cannot access a member of class com.itheima._01junit.HomeWork.Dog with modifiers “private“ at java.
在对获取字节码文件时吗,遇到cannot access a member of class com.itheima._01junit.HomeWork.Dog with modifiers "private" at java.,大部分都是没有开启暴力反射。作用是只要属性存在就会获取,同时也要将得到的属性打开暴力反射。至此已经可以拿到对象并且赋值,如果是拿到字节码的方法及构造方法也是同理。暴力反射格式:拿到的属性.setAccessible(true)
2025-06-09 09:01:46
119
原创 可变参数详解
System.out.println("可变参数" + Arrays.toString(str));可变参数格式methods(数据类型 参数名,数据类型... 参数名)System.out.println("可变参数长度" + str.length);demo1(new String[]{"你好", "java"});demo1("张三", "王五", "赵六");demo5("张三", 18, '男');总结:可变参数,只能放在最后,且只能有一个可变参数。demo5("张三", 18);
2025-06-02 11:47:32
185
原创 spring boot热部署失效
今天回顾起之前热部署失效的解决方法了;首先我们在添加依赖之后,修改代码后在网页上还是没有发生改变。可以看到数据已经能更新了。
2025-06-01 21:24:02
146
原创 LinkedList应用场景
linkedlist的两种模式,一种是队列(先进先出),一种是栈(先进后出)再来讲讲linkedlist的栈;使用push()方法和pop方法实现存取;addFirst()方法是从前面添加元素,addLast()从后面添加。
2025-06-01 20:26:35
197
原创 hashSet底层原理
2.链表长度超过8,且数组长度>=64会自动转为红黑树,红黑树少于6个会转为链表。负载因子依然时0.75,扩容两倍。2.创建时,会默认创建一个16的数组,载因子0.75,当数组元素超过16*0.75=12时,会扩容两倍。3.如果当前位置为空,则会存入,不为空,会判断是否相等,相等时不存,不相等时会存入。4.jdk8之前新元素存老元素位置,老元素挂下面。1.hashSet在jdk8之前:数组+链表。jdk8开始:数组+链表+红黑树。1.新元素挂老元素下面。
2025-06-01 19:38:00
83
原创 map遍历的几种方式
System.out.println("第二种遍历方式:通过map.entryset得到set 集合,再通过迭代器遍历");System.out.println("匿名内部类"+keys+"=="+values);System.out.println("第三种遍历:使用lambda或者匿名函数类");map.put("a1", "北京");map.put("l3", "上海");map.put("c6", "广州");map.put("a7", "深圳");map.put("b三", "北京");
2025-06-01 16:34:28
330
原创 hashset去重自定义对象
有时我们在使用hashset添加对象遇到自定义对象,发现还是两个或者多个相同的对象,此时我们需要重写,hashCode和equals方法。//根据姓名,年龄,成绩,地址生成哈希值。第二种:在自定义对象按下alt+insert,选择equals() and hashCode()会直接自动重写。第三种,在项目中引入lambok模块,在自定义类上面添加@Data,效果等同于第二种。// // Object... values 可变参数,可以传多个参数。第一种方案:手写hashcode和equals。
2025-06-01 13:44:05
130
原创 hashCode哈希值
如图所示,相同的对象生成的hashcode是一样的,注意,hashcode生成的哈希值是随机的。每个对象都有hashCode,不同的对象哈希值不同,相同的对象生成的哈希值是一样的。
2025-06-01 13:31:08
135
原创 set集合特点
System.out.println("treesetNumber特点"+treesetNumber);System.out.println("hashset特点"+hashset);System.out.println("treeset特点"+treeset);hashSet:无序、无索引、不重复,TreeSet:可排序、不重复、无索引。//LINKEdhashSET集合有序、无索引、不重复。//treeset集合有序(可排序)、无索引、不重复。//hashset集合无序、无索引、不重复。
2025-06-01 13:25:15
229
原创 TreeSet详解
students.add(new Student(1, "张三", 18, "北京"));students.add(new Student(2, "李四", 20, "上海"));students.add(new Student(3, "王五", 19, "广州"));students.add(new Student(4, "赵六", 21, "深圳"));students2.add(new Student(1, "张三", 18, "北京"));特点:可排序、无索引、不重复。底层:基于红黑树实现。
2025-06-01 13:17:28
1551
原创 调用hashCode()方法出错
场景,使用int调用hashCode(),爆红,原因是没有使用包装类型,int的包装类型是Integer,char的包装是character,而对于int、char这种基本数据类型没有方法,也不能为空所以会爆红。
2025-06-01 11:01:46
168
原创 java: 警告: 源发行版 17 需要目标发行版 17
解决方案:settings->java compiler 如图所示选择。第四步选中对应版本的jdk。
2025-05-30 12:46:39
394
1
原创 idea删除模块
点击 remove module 再点击move。再右键模块选择delete。我们可以看到颜色已经改变。最后点击delete即可。
2025-05-25 15:06:38
146
原创 idea导入模块失效解决办法
file->new->module from existing sources,选择要导入的模块。导入模块显示失效或者说不是黑色,如图。
2025-05-25 14:56:50
287
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人