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. 启动调试项目

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

相关推荐
咕白m6251 小时前
Java 实现 Excel 转 HTML:完整示例
java
RealPluto2 小时前
Spring AOP 失效排查
java·spring
码路飞2 小时前
热榜全是 OpenClaw,但我用 50 行 Python 就造了个桌面 AI Agent 🤖
java·javascript
Nyarlathotep01132 小时前
LinkedList源码分析
java·后端
用户8307196840822 小时前
Java 告别繁琐数据统计代码!MySQL 8 窗口函数真香
java·sql·mysql
带刺的坐椅3 小时前
SolonCode v0.0.20 发布 - 编程智能体(新增子代理和浏览器能力)
java·ai·agent·solon·solon-ai·claude-code·openclaw
会员源码网4 小时前
数字格式化陷阱:如何优雅处理 NumberFormatException
java
孔明click335 小时前
Sa-Token v1.45.0 发布 🚀,正式支持 Spring Boot 4、新增 Jackson3/Snack4 插件适配
java·sa-token·开源·springboot·登录·权限认证
程序猿阿越5 小时前
Kafka4源码(二)创建Topic
java·后端·源码阅读
悟空码字5 小时前
Spring Boot 整合 MongoDB 最佳实践:CRUD、分页、事务、索引全覆盖
java·spring boot·后端