IDEA中SpringBoot项目数据库连接加密方法

1. maven添加相应版本的依赖

这里注意,不能使用太新的版本,本人开发环境使用3.0.3版本时,报以下错误,使用2.1.2时报错消失。

java 复制代码
***************************
APPLICATION FAILED TO START
***************************
 
Description:
 
Failed to bind properties under 'spring.datasource.dynamic.datasource.master.password' to java.lang.String:
 
    Reason: org.springframework.boot.context.properties.bind.BindException: Failed to bind properties under 'spring.datasource.dynamic.datasource.master.password' to java.lang.String
 
Action:
 
Update your application's configuration
Disconnected from the target VM, address: '127.0.0.1:56043', transport: 'socket'

2. 更新maven依赖

更新后,到仓库中找到加密工具jasypt-1.9.3.jar

3. 使用jasypt工具生成密文

vbnet 复制代码
java -cp jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input=待加密字符串 password=盐 algorithm=PBEWithMD5AndDES

4. 修改application-dev.yml文件中待加密的数据源密码

复制代码
ENC(FtvDryJcYcWdFNpfxUs8Sw==)

5. 编辑配置,增加项目启动参数

-Djasypt.encryptor.password=1234

或者 application.yml 文件中增加jasypt的盐配置项:

复制代码
jasypt:
  encryptor:
    password: 1234

6. 启动调试项目

可以看到日志中,数据库连接成功,项目启动成功。

相关推荐
煎蛋学姐18 小时前
SSM基于J2EE的山西旅游网站的设计与实现iiqmx(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·java-ee·ssm 框架·山西旅游网站·在线预订系统
百***618718 小时前
Spring的构造注入
android·java·spring
小白宗轩18 小时前
vsCode的java配置
java·vscode·python
桦说编程18 小时前
如果让我从头再来学习并发编程
java·设计模式·性能优化
414丶小哥19 小时前
Jetbrains系列工具 Idea Websotrm中使用Claude Code
java·ide·intellij-idea·claudecode
zhouyunjian19 小时前
syncronized使用与深入研究
java·开发语言
chxii19 小时前
在 VS Code 中用 MyBatis 操作数据库的 Spring Boot 示例
java
明洞日记20 小时前
【设计模式手册006】建造者模式 - 复杂对象的优雅构建之道
java·设计模式·建造者模式
S***q19220 小时前
后端服务架构设计:从单体到微服务
java·微服务·架构
T***u33320 小时前
微服务书籍
java·微服务·架构