- 博客(12)
- 收藏
- 关注
原创 基于idea的jar包反编译
反编译之后,在decompiler-file文件夹中会生成一个新的jar包,我们直接解压这个jar包,就可以得到反编译后的代码了。idea 中都会自带一个jar包反编译工具。这篇文章主要就给大家介绍这个工具的用法。我们来完成代码的反编译。
2023-12-11 10:19:10 1056 1
原创 mysql 的主从复制与读写分离
这个文章只是起个学习作用,所以我们只是用Master + Slave1 环境做搭建。注:服务器的时区必须同步。
2023-11-22 15:48:53 94 1
原创 SpringBoot + Redis/RabbitMQ 实现订单的支付过期取消功能(延迟消息)
Redis key的过期监听使用的是 OrderExpiredEventListener.java。RabbitMQ过期监听使用的是 OrderConsumeListener.java。
2023-09-15 15:07:42 809 1
原创 SpringBoot 记录操作日志
ResponseBodyAdvice 是用于接收响应结果,并且假设抛出了一场,但是我们在之前的@RestControllerAdvice+@ExceptionHandler 处理了异常,但会的结果其实也是一个json,所以我们在这个都可以接收到,但是我们要注意,上面拦截器中我们已经记录了日志,这个地方直接将返回结果的一些信息写入那条数据集中就好了,所以我们这里用到了本地线程。至此,完整的适用于SpringBoot记录操作日志的代码就完成了!mapper 层 (SpringDataJpa)
2023-08-10 15:36:32 833 1
原创 MybatisPlus 添加返回复杂类型字段数据
这个的意思就是让 MyBatis-Plus 自动生成结果映射,确保正确地将数据库中的字段值映射到实体类的相应属性上,避免手动编写 @Results 注解,从而简化了代码编写。但是这时候有有一个问题,当时用BaseMapper 中的任何查询方法进行查询时,例如。在这样的情况下,使用BaseMapper中的insert进行添加时会抛出。为null,这时候我们需要让这个实体类自动映射结果集,需要加上。,为了解决这个异常,需要对复杂类型的字段加上类型处理器。FastjsonTypeHandler 是属于。
2023-07-12 10:55:58 324 1
原创 SpringSecurity+SpringDataJpa 使用@CreatedBy 填充创建者为null
在使用Spring Security和Spring Data JPA时,如果您在实体类的创建者字段上使用了@CreatedBy注解,通常情况下会自动填充当前登录用户的ID,而不是用户名。这是因为@CreatedBy注解通常与Spring Data JPA的审计功能一起使用。当启用JPA的审计功能时,Spring Data JPA会自动管理实体类的创建者、创建时间等审计字段。而创建者字段一般会映射为用户的唯一标识符(如用户ID),以确保数据的唯一性和一致性。
2023-07-07 10:13:17 923 1
原创 Linux java项目急速部署方案
进入BOOT-INF文件夹,找到class文件夹,把要升级的文件放到相对应的目录里。将源jar包cp到一个空文件夹里,然后把该jar包解压。把打好的jar包cp到启动目录,启动就ok。把该文件夹里的源jar包删除。
2023-06-25 11:10:15 134
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人