spring 3.0 +ibatIS2.0 两个数据源的实现
项目变更需求
需要在生产库获得某一表的序列值,以此为主键插入到查询库。
?
修改spring配置,使其链接两个数据源。
以下为两个数据源配置。
?
代码:
spring xml配置,新增加了一个数据源,因为新的数据源只是查询使用,没有做事务处理。
?
?
ibatIS 基础 dao :
@SuppressWarnings("unchecked")public class IBatisEntityDaoImpl extends SqlMapClientDaoSupport implements IEntityDao {protected SqlMapClient sqlMapClientDB2;//第二个数据库 public SqlMapClient getSqlMapClientDB2() {return sqlMapClientDB2;}public void setSqlMapClientDB2(SqlMapClient sqlMapClientDB2) {this.sqlMapClientDB2 = sqlMapClientDB2;}public <T> T viewEntityDB2(String xmlId, Object id) throws SQLException { T t = (T)sqlMapClientDB2.queryForObject(xmlId, id); return t; } public <T> T viewEntity(String xmlId, Object id) { T t = (T) getSqlMapClientTemplate().queryForObject(xmlId, id); return t; }}?使用的时候调用不同的方法去两个数据库查询数据。
?
dao为测试,且第二个数据源没有事务处理。
?
经过测试,成功。