Spring
SpringBoot实现 License 认证(只校验有效期)
使用开源的证书管理引擎TrueLicense
生成密钥对,使用Keytool生成公私钥证书库
授权者保留私钥,使用私钥和使用日期生成证书license
公钥与生成的证书给使用者(放在验证的代码中使用),验证证书license是否在有效期内
SpringBoot如何实现缓存预热
缓存预热是指在 Spring Boot 项目启动时,预先将数据加载到缓存系统(如 Redis)中的一种机制。
在 Spring Boot 启动之后,可以通过以下手段实现缓存预热:
使用启动监听事件实现缓存预热。
使用 @PostConstruct 注解实现缓存预热。
使用 CommandLineRunner 或 ApplicationRunner 实现缓存预热。
通过实现 InitializingBean 接口,并重写 afterPropertiesSet...
大事务优化
1、事务里面不要进行远程RPC调用首先事务里面进行远程的接口调用,如果不采用分布式事务框架,本身就会存在事务不一致的情况,无法进行数据的回滚操作,并发情况下远程服务响应不及时,会出现接口返回不一致问题,当然必须采用异步调用
Spring中事务失效的8中场景
1. 数据库引擎不支持事务2.没有被 Spring 管理
Spring中还有一招集合注入的写法
Map注入首先来看Map类型的注入,直接在Service中注入一个Map,key为字符串类型,value为上面定义的接口类型。
12
SpringBoot打包War
一、修改pom.xml文件将默认的jar方式改为war:1
Spring 共通异常捕获
说明1捕获异常,并发送邮件
Spring读取配置文件
代码12345
SpringBoot 访问项目时加项目名称
springboot 项目一般直接地址加端口就可以访问了,不像放在tomcat里面还需要加上项目名。
现在,想访问的时候加上项目名用来区分,只要在配置文件里面加上
server.servlet.context-path=/项目名,就可以了