博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring框架整合多数据源 Mysql+oracle
阅读量:5117 次
发布时间:2019-06-13

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

原项目是mysql数据库,现业务需求新加oracle数据源

引oracle驱动jar包ojdbc6.jar  数据连接池换为druid  新加jar包druid-1.0.15.jar

applicationContext.xml文件

clientEncoding=UTF-8
clientEncoding=UTF-8
多数据源路由
DataSourceRouter.java
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;public class DataSourceRouter  extends AbstractRoutingDataSource {    @Override    protected Object determineCurrentLookupKey() {        // TODO Auto-generated method stub        return DataSourceTypeManager.get();    }}
DataSourceTypeManager.java(为了避免多个线程间造成并发问题,用了线程本地变量)
public class DataSourceTypeManager {    //    public static final String MySql = "mysql";    public static final String MySqlTest = "mysqltest";    //public static final String Oracle = "oracle";    public static final String Oracle = "mysqltest";//先用于测试  日后直接换到orcale的数据源    private static final ThreadLocal
dataSourceKey = new ThreadLocal
(){ /* @Override protected String initialValue(){ return DS_SUNGBIO; }*/ }; public static void setDataSourceKey(String dataSource) { dataSourceKey.set(dataSource); } public static String get(){ return dataSourceKey.get(); } public static void set(String dataSourceType){ dataSourceKey.set(dataSourceType); } public static void reset(){ dataSourceKey.set(MySql); } public static void cleanDataSource(){ dataSourceKey.remove(); }}

使用方法:

使用前,手动写:

DataSourceTypeManager.setDataSourceKey(DataSourceTypeManager.Oracle);

来回切换数据源,或者返回默认可以

DataSourceTypeManager.reset();

原博客:

转载于:https://www.cnblogs.com/MuZi0627/p/11060507.html

你可能感兴趣的文章
Red and Black(poj-1979)
查看>>
分布式锁的思路以及实现分析
查看>>
腾讯元对象存储之文件删除
查看>>
jdk环境变量配置
查看>>
安装 Express
查看>>
包含列的索引:SQL Server索引的阶梯级别5
查看>>
myeclipse插件安装
查看>>
浙江省第十二届省赛 Beauty of Array(思维题)
查看>>
NOIP2013 提高组 Day1
查看>>
个人对vue生命周期的理解
查看>>
cocos2dx 3.x simpleAudioEngine 长音效被众多短音效打断问题
查看>>
存储(硬件方面的一些基本术语)
查看>>
观察者模式
查看>>
Weka中数据挖掘与机器学习系列之基本概念(三)
查看>>
Win磁盘MBR转换为GUID
查看>>
大家在做.NET B/S项目的时候多用什么设技术啊?
查看>>
Java SE和Java EE应用的性能调优
查看>>
Android设计模式系列--原型模式
查看>>
免费的论文查重网站
查看>>
C语言程序第一次作业
查看>>