博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring 配置数据库动态密码
阅读量:4049 次
发布时间:2019-05-25

本文共 1321 字,大约阅读时间需要 4 分钟。

– Start


以前我们把数据库密码配置在属性文件中,缺陷是密码是静态的,明文的。随着软件的发展,密码被统一管理,定期修改,我们需要动态获取密码,下面是一个简单的例子。

jdbc.driverClassName=org.hsqldb.jdbcDriverjdbc.url=jdbc:hsqldb:hsql://dev:9002jdbc.username=sa
jdbc.driverClassName=org.hsqldb.jdbcDriverjdbc.url=jdbc:hsqldb:hsql://test:9002jdbc.username=sa
jdbc.driverClassName=org.hsqldb.jdbcDriverjdbc.url=jdbc:hsqldb:hsql://production:9002jdbc.username=sa
package shangbo.spring.core.example47;public class PasswordProvider {		// 动态获取密码	public String getPassword() {		return "123456";	}}
package shangbo.spring.core.example47;import org.apache.commons.dbcp.BasicDataSource;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class App {    public static void main( String[] args )    {    	// 设置环境变量,通常在 shell 启动脚本中设置    	System.setProperty("env", "dev");    			// 实例化 Spring IoC 容器		ApplicationContext context = new ClassPathXmlApplicationContext("shangbo/spring/core/example47/example.xml");				// 从容器中获得对象		BasicDataSource dataSource = context.getBean(BasicDataSource.class);						// 使用对象		System.out.println(dataSource.getPassword());    }}

– 声 明:转载请注明出处
– Last Updated on 2017-05-30
– Written by ShangBo on 2017-05-30
– End

你可能感兴趣的文章
如此调用
查看>>
计算机的发展史
查看>>
带WiringPi库的交叉编译如何处理一
查看>>
带WiringPi库的交叉笔译如何处理二之软链接概念
查看>>
Spring事务的七种传播行为
查看>>
ES写入找不到主节点问题排查
查看>>
Java8 HashMap集合解析
查看>>
欢迎使用CSDN-markdown编辑器
查看>>
Android计算器实现源码分析
查看>>
Android系统构架
查看>>
Android 跨应用程序访问窗口知识点总结
查看>>
各种排序算法的分析及java实现
查看>>
SSH框架总结(框架分析+环境搭建+实例源码下载)
查看>>
自定义 select 下拉框 多选插件
查看>>
js获取url链接携带的参数值
查看>>
gdb 调试core dump
查看>>
gdb debug tips
查看>>
arm linux 生成火焰图
查看>>
linux和windows内存布局验证
查看>>
linux insmod error -1 required key invalid
查看>>