配置文件中数据库连接信息不好明文保存,这里用到jasypt简单做个加密!
1.pom引入jasypt
<!-- jasypt -->
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>3.0.3</version>
</dependency>
注意这里用到的版本是3.0.3
2.在application.yml加上公共配置
# jasypt加密的盐值
jasypt:
encryptor:
password: selfdefined
algorithm: PBEWithMD5AndDES
# 3.0.3需要加上一下配置,不然启动时会报错
iv-generator-classname: org.jasypt.iv.NoIvGenerator
3.在maven仓库中找到jasypt包
4.在idea的Terminal中编辑、或者在cmd命令行中编辑
java -cp E:\Soft\mvn-repository\org\jasypt\jasypt\1.9.3\jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="root" password=selfdefault algorithm=PBEWithMD5AndDES
前面是jar包绝对路径
input="你需要加密的东西"
password=你可以当作是我们配置的盐
algorithm=加密方式
这里我加密数据库中的用户名root
5.将需要加密出来的字符串替换掉配置文件application-dev.yml中的明文,ENC()
项目启动成功!