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

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

相关推荐
宋哥转AI18 小时前
@Tool写了但tools/list为空?Spring AI MCP Server注册的两种路径和四个坑
java·agent·mcp
兰令水18 小时前
leecodecode【树形DP】【2026.6.11打卡-java版本】
java·算法·深度优先
骑士雄师18 小时前
19.3 langgraph的工作节点和路由函数
java·前端·数据库
SWAGGY..19 小时前
Linux系统编程:(十三)环境变量
java·linux·算法
程序员黑豆19 小时前
AI全栈开发 - Java:基本数据类型 vs 引用数据类型的内存存储
java·前端·ai编程
布朗克16819 小时前
34 JVM深入理解
java·jvm
Flittly19 小时前
【AgentScope Java新手村系列】(4)结构化输出
java·spring boot·spring·ai
何以解忧,唯有..20 小时前
Python 中的继承机制:从基础到高级用法详解
java·开发语言·python
Yiyaoshujuku20 小时前
化合物数据集API接口(数据结构及样例)
java·网络·数据结构
plainGeekDev20 小时前
算法刷题笔记:一维DP没那么难,状态想清楚就赢了一半
java·算法·面试