使用代码生成器生成代码

克隆下面项目地址,进行练习代码生成

Gitee:https://gitee.com/xiao-i-fei/xiaofei-generator

GitHub:https://github.com/xiao-i-fei/xiaofei-generator

使用jasypt加密

加密步骤

  • 配置jasypt密钥,对密码进行加密
  • 将加密后的字符串以ENC(xxxx)的格式配置在配置文件中
  • 启动jar后,在参数中加上--jasypt.encryptor.password指定jasypt密钥

引入依赖

1
2
3
4
5
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>3.0.5</version>
</dependency>

设置密钥

生成加密密码后建议把密钥删掉,在idea里面指定或者启动参数里面指定密钥--jasypt.encryptor.password

1
2
3
jasypt:
encryptor:
password: 123

加密字段

1
2
3
4
5
6
7
@Autowired
private StringEncryptor encryptor;
@Test
void contextLoads() {
// 输出 ozeENEqnD3r1v1tJ9Xp0Rm3Ze
System.out.println(encryptor.encrypt("root"));
}

使用

使用ENC(生成加密字符串)

1
2
3
spring:
redis:
password: ENC(ozeENEqnD3r1v1tJ9Xp0Rm3Ze)

启动

  • 启动jar包:
    • 在后面加上--jasypt.encryptor.password=密钥,例:java -jar xxx.jar —jasypt.encryptor.password=密钥
  • 开发配置
    • 在配置文件中直接指定jasypt.encryptor.password的值
    • 在idea里面配置,指定--jasypt.encryptor.password=密钥

image-20230210161300543

基于MybatisPlus内置AES工具包实现全局配置文件密码加密

引入依赖

1
2
3
4
5
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>

加密字段

1
2
3
4
5
void contextLoads() {
//参数一:需要加密的密码 参数二:加密密钥(必须十六位)
//输出:RpZzJlHi/8rZwZfG65dOXg==
System.out.println(AES.encrypt("root","Cd!3e4^fe*5m!9Ko"));
}

使用

使用:mpw:生成加密字符串

1
2
3
spring:
redis:
password: mpw:RpZzJlHi/8rZwZfG65dOXg==

启动

  • 启动jar包:
    • 在后面加上--mpw.key=密钥,例:java -jar xxx.jar —mpw.key=密钥
  • 开发配置
    • 在配置文件中直接指定mpw.key的值
    • 在idea里面配置,指定--mpw.key=密钥

image-20230210162527221