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