spring多数据源配置实现方法实例分析
本文实例讲述了spring多数据源配置实现方法。分享给大家供大家参考,具体如下:
在网上找到的配置多数据源的方法。
1.扩展org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource类
实现代码
importorg.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
publicclassDynamicDataSourceextendsAbstractRoutingDataSource{
@Override
protectedObjectdetermineCurrentLookupKey(){
//TODOAuto-generatedmethodstub
returnDbContextHolder.getDbType();
}
}
2.实现一个线程安全的DbContextHolder类。
publicclassDbContextHolder{
privatestaticfinalThreadLocalcontextHolder=newThreadLocal();
publicstaticvoidsetDbType(StringdbType)
{
contextHolder.set(dbType);
}
/**
*取得dbtype类型
*@return
*/
publicstaticStringgetDbType()
{
Stringstr=(String)contextHolder.get();
if(null==str||"".equals(str))
str="1";
returnstr;
}
publicstaticvoidclearDbType()
{
contextHolder.remove();
}
}
3.修改spring的配置文件。
4.切换数据源方法。
在serverice方法之前调用
DbContextHolder.setDbType("2");表示使用第二个数据源。
更多关于java相关内容感兴趣的读者可查看本站专题:《Spring框架入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。