- 博客(269)
- 收藏
- 关注
原创 Java 常用的集合详解(源码分析等部分 持续补充中)
Java 集合体系的核心接口和类位于java.utilCollection:存储单值元素的集合,所有单值集合类的根接口,定义了集合的基本操作。核心方法:add(E e):添加元素。:删除元素。size():返回集合大小。iterator():返回迭代器。子类:List:有序集合,允许重复元素。Set:无序集合,不允许重复元素。Queue:队列,支持先进先出(FIFO)或优先级排序。Map:存储键值对的集合,键唯一(基于equals()和hashCode()
2025-03-05 11:44:40
592
原创 java - 位向量
前言最近工作中遇到一个需求,要同时存储大量的布尔值,感觉用数组的话太浪费内存,因为只有0和1状态,突然想起了之前学习的EnumSet中使用的位向量。
2025-03-04 14:55:33
829
原创 java反射 -- 学习记录
注解定义@FieldName:用于映射实体类字段与VO类字段之间的关系。如果某个字段需要映射到VO中不同的字段名,则可以通过@FieldName("目标字段名")指定。@ClassType:用于指定实体类的目标VO类。参数:定义目标VO类。参数deepCopy:是否对嵌套对象进行深度封装。实体类到VO的转换提供了两个核心方法::主入口方法,负责从实体类对象生成对应的 VO 对象。:递归处理实体类字段,并生成目标类对象。字段值设置方法:负责将计算后的字段值设置到目标VO对象中。
2025-02-13 20:05:55
778
原创 ThreadLocal -- 学习记录
叫做线程变量,意思是中填充的变量属于当前线程,该变量对其他线程而言是隔离的,也就是说该变量是当前线程独有的变量。为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。是 Java 中的一种机制,用于提供线程安全的局部变量。它为每个线程维护一个独立的变量副本,从而避免了多个线程之间的共享和竞争问题。简而言之,可以使得每个线程在访问该变量时都获得自己的副本,而不是共享同一个对象或数据。数据隔离演示:由下面代码可看出,数据互不影响。i < 5;i ++) {
2025-02-06 09:33:53
776
原创 docker 安装 -- 阿里云
Docker CE 镜像源站使用官方安装脚本自动安装 (仅适用于公网环境)手动安装帮助 (阿里云ECS可以通过内网安装,见注释部分内容)
2025-01-16 14:41:32
873
1
原创 学习笔记 -- Nginx(持续更新中)
Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAPPOP3SMTP服务。它是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点开发的,其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。
2025-01-16 14:22:37
830
原创 modbus -- java中Modbus4J功能码对应方法记录
不同的功能码用于不同的操作,例如读取保持寄存器、写入单个寄存器等。描述:写入多个保持寄存器的值。可以通过 WriteMultipleRegistersRequest 类进行请求。描述:读取保持寄存器的内容。可以通过 ReadMultipleRegistersRequest 类进行请求。描述:读取输入寄存器的内容。可以通过 ReadInputRegistersRequest 类进行请求。描述:写入多个线圈的状态。描述:写入单个保持寄存器的值。描述:写入单个线圈的状态。描述:读取线圈的状态。
2025-01-16 14:20:40
360
原创 VUE报错 -- hmr.ts:252 SyntaxError: Identifier ‘__vite__injectQuery‘ has already been declared
不知道什么时候自动导入的,导致引发报错,删除即可。
2024-09-21 22:29:20
562
原创 Maven打包报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.0
这里查看一下版本,我的pom.xml配置的1.8,之前这里是5,换成1.8就好了。
2024-09-03 09:52:00
1512
原创 [Server] /usr/sbin/mysqld: Forcing close of thread 106 user: ‘root‘.报错解决
后端远程连接数据库的时候,间接性的断连,然后后端不停的重连,过一会儿就又自己连上了。然后这种现象就一直往复,导致后端几分钟崩一次。
2024-06-19 19:42:52
595
1
原创 SQL报错 -- sql injection violation, comment not allow
大概意思就是检测到SQL注入了语句含有就会报这个错。
2024-05-08 16:29:12
2082
原创 spring boot -- Transactional事务的相关
Spring的事务代理通常是通过Java动态代理或CGLIB动态代理生成的,这些代理要求目标方法是公开可访问的(public)。私有方法无法被代理,因此事务将无效。spring事务的源码,事务底层使用了aop,也就是通过jdk动态代理或者cglib,生成了代理类,在代理类中实现的事务功能。事务管理是基于动态代理对象的代理逻辑实现的,那么如果在类内部调用类内部的事务方法,这个调用事务方法的过程并不是通过代理对象来调用的,而是直接通过this对象来调用方法,绕过的代理对象,肯定就是没有代理逻辑了。
2024-04-29 17:54:52
411
原创 springboot报错 -- to the cache for web application [] because there was insufficient free space availa
意思尝试将数据放入 Web 应用程序的缓存时,由于在清除已过期的缓存条目后剩余的可用空间不足,无法执行放入操作。建议考虑增加缓存的最大大小来解决这个问题。
2024-04-21 00:43:37
1219
1
原创 Invalid value type for attribute ‘factoryBeanObjectType‘: java.lang.String 报错解决
更新mybatis-plus包</</</</
2024-04-15 20:46:04
7357
8
原创 spring-boot报错 -- java: 程序包javax.servlet.http不存在
当springboot项目从2.7.x的升级到3.0.x的时候,会遇到一个问题,可能是一些包的精简变化导致的。
2024-04-09 21:26:18
6605
原创 Idea问题 --资源文件夹和代码文件夹没变色
这种问题可能是idea的.inl文件问题。只需要右键当前文件夹,选择Mark Directory as 然后选择对应样式。
2024-04-09 13:47:22
1642
原创 GIt -- 拉取代码覆盖掉自己的代码解决方法
右键项目名,选择Local History 然后选择Show History,选择一个版本即可恢复。
2024-04-09 13:36:30
2621
1
原创 文件上传报错 —— Cannot write uploaded file to disk!
之前还能用,后来就不好使了,同一台电脑啥也没变,所以应该不是上述三种原因。重现了几次报错,发现文件被占用了,同一个文件被同时操作,所以导致报错,只需要加个锁或者保证同时只有一个文件在使用。
2024-04-07 09:06:15
2129
2
原创 JVM崩溃信息hs_err_pid.log分析
致命错误出现的时候,JVM生成了这样的文件,其中往往包含了虚拟机崩溃原因的重要信息。默认情况下文件是创建在工作目录下的(如果没权限创建的话JVM会尝试把文件写到/tmp这样的临时目录下面去)。
2024-02-22 14:15:48
2877
1
原创 structure.getFiledOrder() on class ...... returns ([name]) which do not match declared field names
报错意思是,这些名称与声明的字段名不匹配,但是我只有这一个。
2023-11-22 10:23:11
613
原创 报错invalid memory access -- Java调用JNA
"Invalid memory access"是Java中使用JNA(Java Native Access)调用本地库时可能出现的错误之一。
2023-11-22 09:50:51
9385
6
原创 unsupported array argument type -- Java调用JNA
"unsupported array argument type"错误,通常表示传递给本地函数的数组参数类型不被支持。
2023-11-21 11:54:32
313
原创 复制对象非空值到另一个对象中
平常修改某些信息的时候需要检查此值是否为空,不为空的话才对其赋值修改,但当属性过多时,这个操作就会变得很烦。此工具类作用就是简化其繁琐的操作。
2023-10-08 09:53:08
422
原创 maven 启动项目报错 Command line is too long,shorten command line for........
点击上图的蓝色字体或者将此处改为如图所示。
2023-09-25 16:00:43
184
原创 springboot 项目中处理多个全局异常处理器的优先级
在Spring Boot中,当存在多个全局异常处理器时,可以通过实现。确保Spring Boot应用程序中存在其他全局异常处理器(注解将自定义的全局异常处理器设置为具有最高优先级。来指定它们的执行顺序。使用@Order注解。
2023-09-20 11:24:11
970
原创 @Vaild的作用及其用法
在编写接口的时候,通常会进行参数的校验,一般方法就是if语句的疯狂叠加,逻辑上是可以的,没什么问题,但是代码这样就很乱,感觉一团一样,而且不同的地方有些相似的校验还得重写,如下。
2023-09-19 10:22:52
12661
原创 DOM4J报错 -- No such namespace prefix
解析XML文档时缺少了对xmi这个命名空间的声明,没有声明,所以不能直接用。
2023-09-13 11:33:47
496
原创 docker -- 学习笔记
是用来构建Docker镜像的文本文件,是由一条条构建镜像所需的指令和参数构成的脚本。官网bridge:为每一个容器分配、设置IP等,并将容器连接到一个docker0,虛拟网桥,默认为该模式。使用指定(默认使用dicker0)。host:容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。使用指定。none:容器有独立的Network namespace,但并没有对其进行任何网络设置,如分配veth pair和网桥连接,IP等。使用指定。container。
2023-09-10 21:04:53
460
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人