- 博客(148)
- 资源 (5)
- 收藏
- 关注
原创 @PostConstruct
是 Java 中的一个注解,用于标记一个方法,使其在对象初始化完成后(即依赖注入完成之后)自动执行。它是 JSR-250(Java 规范请求)的一部分,通常用于执行一些初始化逻辑。
2025-04-02 10:00:15
169
原创 SpringBoot中WebMvcConfigurer注册多个拦截器(addInterceptors)时的顺序问题(二)
Controller方法执行完毕,但尚未进行视图渲染(如Thymeleaf、Freemarker等)。通过合理组合这三个方法,可以实现灵活的请求处理逻辑(如权限链、日志追踪、性能监控等)。:整个请求处理完成(包括视图渲染),无论是否有异常都会执行。:中断请求,直接返回(后续拦截器、Controller、:最适合做资源清理和最终日志记录,无论成功失败都会执行。:是拦截器的“入口”,决定请求是否继续。:资源清理、性能监控、异常日志记录。:权限校验、参数预处理、日志记录。:可修改响应数据,但无法处理异常。
2025-03-28 10:46:47
419
原创 SpringBoot中WebMvcConfigurer注册多个拦截器(addInterceptors)时的顺序问题(一)
在Spring Boot中,你可以通过多次调用来注册多个拦截器,并通过order()方法或添加顺序来控制它们的执行顺序。
2025-03-28 10:44:26
558
原创 @Accessors
Accessors是 Lombok 提供的一个注解,用于配置 getter 和 setter 方法的生成行为。它支持链式调用、简化方法名以及处理字段名前缀等功能。通过@Accessors,可以进一步减少样板代码,使代码更加简洁和易读。
2025-03-20 14:21:35
469
原创 Java进阶-try-with-resources
try-with-resources 是 Java 7 中引入的一个新特性,用于简化资源管理,一般是用于处理实现了 AutoCloseable 或 Closeable 接口的资源(如文件、数据库连接等),用于确保在使用完资源后自动关闭资源,避免资源泄漏。简化上面的内容其实就一个:自动关闭资源。在了解自动关闭资源之前,我们看看,不自动关闭资源(也就是手动关闭)是什么样的。下面看看在传统try-catch-finally语句中来手动关闭资源的过程。
2025-03-06 11:11:07
6585
原创 CentOS上安装Docker Compose(2)
通过以上步骤,你已经成功在CentOS上安装并配置了Docker Compose。现在可以使用Docker Compose来管理和编排多容器应用了。
2025-02-28 17:39:40
918
原创 CentOS 7.6上安装Docker(1)
如果你在中国大陆,可能会遇到Docker镜像下载速度慢的问题。你可以配置Docker使用国内的镜像加速器,例如阿里云或DaoCloud。:如果在中国大陆,可能会遇到访问Docker官方仓库速度慢或不稳定的问题。可以使用国内的镜像源来替代Docker官方仓库。至此,Docker已经成功安装在CentOS 7.6上,并且可以正常使用。你可以开始使用Docker来部署和管理容器了。如果一切正常,你会看到一条欢迎信息,表示Docker已经成功安装并可以正常运行。的情况下运行Docker命令,可以将当前用户添加到。
2025-02-28 11:31:23
557
原创 MySql:Authentication plugin ‘caching sha2 password‘ cannot be loaded
插件进行认证,但是遇到错误信息 "Authentication plugin 'caching sha2 password' cannot be loaded",这通常意味着客户端库或者连接器不兼容或者没有正确配置以支持这个插件。确保你的 MySQL 客户端库(如 MySQL Connector/C++, MySQL Connector/Python, MySQL Connector/J 等)支持。,这是一个更广泛的兼容性插件。如果你无法更新客户端库,你可以在 MySQL 服务器上将用户的认证插件更改为。
2025-02-25 16:38:29
336
原创 centos7.6 服务器安装mysql数据库教程
按照提示操作,输入临时密码并设置新密码,移除匿名用户、禁止远程 root 登录等。至此,MySQL 数据库已在 CentOS 7.6 上安装完成。MySQL 提供了一个官方的 Yum 仓库,方便安装和更新。,说明 MySQL 已成功安装并运行。输入你设置的 root 密码。
2025-02-25 15:48:58
302
原创 maven中的groupId和artifactId
比如我创建一个项目,我一般会将groupId设置为cn.zr,cn表示域为中国,zr是我个人姓名缩写,artifactId设置为testProj,表示你这个项目的名称是testProj,依照这个设置,你的包结构最好是cn.zr.testProj打头的,如果有个StudentDao,它的全路径就是cn.zr.testProj.dao.StudentDao。ArtifactID就是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。一般GroupID就是填com.leafive.test这样子。
2024-12-06 17:19:19
398
原创 另一个程序正在使用此文件,进程无法访问。
我同时开了eclipse和idea,而且两个编辑器中都打开了project项目,所有当使用IDEA对project进行打包时,就会报上述错误。关掉eclipse,然后使用IDEA进行打包。IDEA 执行maven的install命令时,报。
2024-09-02 11:15:27
1044
1
原创 解决: ‘dependencies.dependency.systemPath‘ for xx must specify an absolute path but is xx 问题
PS:同组的同事workspace大概率跟我不一样,这个方案作为备选。编译的时候直接报错。引用的时候这样引用;
2024-08-05 17:02:17
1712
原创 eclipse中svn从分支合并到主干及冲突解决
8、点击下一步,弹出这个对话框是问你要怎么处理冲突,选择第一个: Mark as conflicted, I will deal it later,意思就是, 标记冲突,稍后再解决. 然后点击OK, 如果有多个冲突, 这个对话框会弹出多次,同样操作即可.1、将分支先commit,然后再update,然后再clean一下,将项目多余的target都清理掉。有冲突就解决冲突, 解决完冲突再提交. 没冲突就合并完毕。5、有未提交的改动,要么update一下,要么revert一下。7、选择需要被合并的分支。
2024-06-21 14:57:23
742
原创 数组转List
用Arrays.asList可以直接将数组转化为List。但是如果此时直接操作list进行remove,就会报错了。这个时候,需要先转换一遍list。
2023-11-22 10:39:01
177
原创 HashMap排序
2、要排序的话,只能先转换成List,然后对List进行排序,最后再转换成LinkedHashMap。3、这样做就完全是自定义排序,可以做多key排序,也可以做多value排序。1、HashMap本身是无序的,不能直接对其排序。
2023-08-08 09:28:38
598
转载 linux开启swap
华为云购买的机器,默认不会开启swap分区,如有需要,需自行开启。如将vm.swappiness设定为0,即不使用swap分区,默认云资源都为0开启swap分区新建一个专门的文件用于swap分区ddif=/dev/zeroof=/swapbs=1024 count=8388616通过mkswap命令将上面新建出的文件做成swap分区 注:此文件的大小是count的大小乘以bs大小,上面命令的大小是8GBmkswap /swap查看内核参数vm.swappiness...
2021-08-26 17:34:14
979
原创 如何解决-bash: jstat: command not found
今天有个项目内存溢出了,想用jstack的时候报错-bash: jstat: command not found想了下,估计是服务器没有配环境变量,就去看了一下,果然没有配。解决办法:配置环境变量1、找java安装路径[root@localhost /]# whereis javajava: /usr/bin/java[root@localhost /]# [root@localhost /]# ls -lrt /usr/bin/javalrwxrwxrwx. 1 root
2021-08-26 16:34:42
7767
原创 CentOS7.2中Redis安装及异常解决办法
官网下载地址:http://redis.io/download1. 下载Redis源码(tar.gz),并上传到Linux2. 解压缩包:tar zxvf redis-4.0.9.tar.gz3. 进入解压缩后的文件夹:cd redis-4.0.94. 编译源码:make(1)若出现如下提示,则说明未安装gcc,使用命令安装gcc:yum install gcc[root@localhost re...
2021-08-26 14:03:32
384
转载 ignoring option PermSize=128m; support was removed in 8.0
问题出现场景使用jdk1.8的时候设置了vm参数:-Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=768m -Xss2m此时运行java程序时VM提示如下警告:Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=512m; support was removed in 8.0Java HotSpot(TM) 64-Bit Server VM warning: ignoring
2021-08-26 13:58:45
5042
2
原创 eclipse使用mybatis实现DAO与xml文件相互跳转
打开Help-Eclipse Marketplace,搜索mybatipse插件,安装后重启即可。
2021-08-24 10:20:47
958
原创 springboot 多数据源事务回滚失效
springboot版本:2.0.1.RELEASE问题:发生多数据源事务回滚失效现象原因:在某个数据源上加了@Primary注解,然后需要回滚的service方法是另一个数据源的数据解决方法:在当前的方法上指明需要使用的事务的名称,即@Transactional("abcTransactionManager")PS:有网友说在2.0版本之后,不再需要在数据源上加@Primary注解,未验证该说法。...
2021-03-08 17:40:30
1723
5
转载 Thymeleaf使用与语法最全详解(精)
Spring Boot模板引擎thymeleaf什么是Thymeleaf? 为什么要使用Thymeleaf? 使用Thymeleaf步骤 Thymeleaf语法详细 源码分析 th属性 1、Thymeleaf是什么?简单说, Thymeleaf 是一个跟 Velocity、FreeMarker 类似的模板引擎,它可以完全替代 JSP 。从代码层次上讲:Thymeleaf是一个java类库,他是一个xml/xhtml/html5的模板引擎,可以作为mvc的web应用的view层。
2021-01-27 11:35:55
13338
原创 svn合并分支到主干
1、在分支上update,更新为最新代码,然后Maven clean2、切换会主干,若有报错,则clean一下项目3、在项目上右击->Team->Merge,进行主干上的代码合并4、填入分支的仓库地址,点击【OK】5、检查待合并的代码,解决冲突,然后提交版本库。...
2020-11-10 15:32:18
2046
原创 activemq启动不起来,报错Address already in use: JVM_Bind
之前可以启动的activemq现在怎么都启动不起来,一直报错:Address already in use: JVM_Bind经查询,肇事者为widows 的ICS服务。解决方案是,在服务列表中找到Internet Connection Sharing (ICS)服务,改成手动启动或禁用。...
2020-10-09 11:31:56
397
转载 CentOS 配置swap交换区的方法
CentOS 作为linux世界里最稳定的服务器版本,rhas5一直有很大的应用面,之前一直关注的是freebsd,因为应用的需要,特别在配合mysql和oracle上redhat有着太多优势。学习中购买的低配置的阿里云,经常因为内存而导致程序崩溃,这里配置swap交换分区,降低内存的崩溃配置swap之前,通过 free 和 df 查看 swap 和 磁盘空间情况,目的是通过配置swap后比较变化。free -m[root@ithomer ~]# free -m t
2020-07-31 11:22:02
851
转载 MySQL中tinytext、text、mediumtext和longtext等各个类型详解
一、字符串类型 类型 范围 说明 Char(N) [ binary] N=1~255 个字节 binary :分辨大小写 固定长度 std_name cahr(32) not null VarChar(N) [binary] N=1~255 个字节 binary :分辨大小写 可变长度 std_address varchar(256) TinyBlob 最大长度255个字.
2020-06-03 17:20:20
2036
转载 centOS7安装jdk
1、卸载JDKCentos7一般都会带有自己的openjdk,我们一般都回用oracle的jdk,所以要卸载步骤一:查询系统是否以安装jdk #rpm -qa|grep java或 #rpm -qa|grep jdk或 #rpm -qa|grep gcj步骤二:卸载已安装的jdk #rpm -e --nodeps java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64 #rpm -e --nodeps java-...
2020-06-01 09:57:08
183
原创 springboot如何配置,同时支持https和http
1、配置资源文件#http 配置http.port=8001#https 配置server.port=8002server.ssl.key-store=classpath:xxxxxx.pfxserver.ssl.key-store-password=ssssssssssserver.ssl.keyStoreType=PKCS122、启动类中添加 @Value("${...
2020-03-15 16:11:19
773
转载 tomcat十大安全优化措施
1、telnet管理端口保护使用telnet连接进来可以输入SHUTDOWN可以直接关闭tomcat,极不安全,必须关闭。可以修改默认的管理端口8005改为其他端口,修改SHUTDOWN指令为其他字符串。# vi conf/server.xml<Server port="8365" shutdown="IN0IT">2 AJP连接端口保护Tomcat服务器通过Co...
2020-03-08 11:28:20
488
原创 在父项目中新建子项目
记录一下操作过程,避免遗忘。1、先在父项目文件夹下随便复制一个子项目,然后改成你需要的名字,例如abc。2、在父项目的pom.xml文件中,添加一个<module>abc</module>。3、修改新的子项目abc的pom.xml,将<artifactId>和<name>改成你需要的名字,如 <artifactId>a...
2020-02-12 16:39:37
893
转载 ActiveMQ之一台服务器上启动多个broker
步骤如下:1.把整个conf文件夹复制一份,比如叫做conf22.修改里面的activmq.xml文件(1)里面的brokerName不能重复(2)数据存放的文件名称不能重复(3)所有涉及的transportConnectors的端口,都要跟前面的不一样PS:上图中的name=“nio”,在我的版本(5.14.2)中是没有的,所以没有改,经测试,无影响。...
2020-02-03 22:49:20
496
转载 Could not create connection to database server. Attempted reconnect 3 times.
问题描述: 用docker-compose部署了一个mysql,然后项目部署时报错:Could not create connection to database server. Attempted reconnect 3 times.问题分析:我百度了很久,好多都是配置连接池的url时加后缀useUnicode=true&characterEncod...
2020-01-14 15:57:16
860
转载 Linux中Redis的安装和卸载
一、安装Redis1.获取redis资源wget http://download.redis.io/releases/redis-4.0.8.tar.gz2.解压tar xzvf redis-4.0.8.tar.gz3.安装cd redis-4.0.8makecd srcmake install PREFIX=/usr/local/redis(如果有执...
2020-01-03 11:30:01
3128
原创 微信公众号配置指南
1、开发=》基本配置注意:配置服务器地址(URL)时,需要先发布项目,保证验签的接口checkSignature是可以被微信调用的。2、设置=》公众号设置=》功能设置(配置业务域名、JS接口安全域名、网页授权域名)注意:进行以上三项设置时,需要在项目中保证微信提供的那个MP_verify_xxxxxxxxxxxx.txt文件能在浏览器中被访问到。...
2020-01-02 16:03:38
525
原创 activeMQ修改默认账户名和密码、默认端口
1、针对未授权访问,修改conf/jetty.xml文件,bean id为securityConstraint下的authenticate修改值为true,重启服务即可(高版本基本都已设置为true)2、针对弱口令问题,修改conf/jetty.xml文件,bean id 为securityLoginService下的conf值获取用户properties,修改用户名密码,重启服务即可3、...
2019-11-29 15:36:15
3214
原创 工程字符编码ANSI_X3.4-1968乱码错误及解决方案
问题:CentOS7下面,当更改tomcat的启动用户(从root改为tomcat)后,而且使用的是daemon模式,当系统自动启动tomcat的时候,发现系统环境变量file.encoding打印的编码为ANSI_X3.4-1968,而不是UTF-8,所以日志中出现中文乱码。解决方案:在tomcat/bin/daemon.sh文件中加入下面一行代码即可解决问题。CATALINA...
2019-10-31 17:44:11
6113
转载 Linux系统的tomcat以daemon模式启动
1 序言Jsvc 是专为 Java 应用程序开发的一个工具包,其目标是把 Java 应用程序的普通运行转换为可以配置某个普通用户以Unix 守护进程的方式运行。这样的话,可以很方便地启动 / 停止应用程序,同时也可以支持开机自启。开机自启tomcat是比较重要的,可以保证由于意外而使机器需要重启时不需要手动重启tomcat就可以自动恢复服务。简而言之,在生产环境中我们需要将tomcat配...
2019-10-31 17:14:47
578
转载 spring @Primary-在spring中的使用
在spring 中使用注解,常使用@Autowired, 默认是根据类型Type来自动注入的。但有些特殊情况,对同一个接口,可能会有几种不同的实现类,而默认只会采取其中一种的情况下 @Primary 的作用就出来了。下面是个简单的使用例子。有如下一个接口public interface Singer { String sing(String lyrics);}有下面的两个实...
2019-10-28 15:59:44
144
转载 Linux-非root用户运行tomcat
#前言:为什么要使用非root用户运行tomcatroot用户启动tomcat有一个严重的问题,那就是tomcat具有root权限。这意味着你的任何一个页面脚本(html/js)都具有root权限,所以可以轻易地用页面脚本 修改整个硬盘里的文件!所以最好不要使用root启动tomcat。# 正文:非root用户运行tomcat## tomcat安装略... 本文安装目录...
2019-10-18 20:24:55
638
spring boot项目源码
2018-02-26
mybatis代码生成器(支持mysql和sqlServer)
2017-12-14
Notepad++的Json格式化插件
2017-03-02
软件需求设计模板
2017-02-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人