Mybatis支持连接多数据库
2017-06-30 14:53
1151 查看
MyBatis 支持配置多个 dataSource 环境,可以将应用部署到不同的环境上,如 DEV(开发环境),TEST(测试换将),
QA(质量评估环境),UAT(用户验收环境),PRODUCTION(生产环境),可以通过将默认 environment 值设置成想要的
environment id 值。
在上述的配置中,默认的环境 environment 被设置成 development。当需要将程序部署到生产服务器上时,你不需
要修改什么配置,只需要将默认环境 environment 值设置成生产环境的 environment id 属性即可。
有时候,我们可能需要在相同的应用下使用多个数据库。比如我们可能有 SHOPPING-CART 数据库来存储所有的订单
明细;使用 REPORTS 数据库存储订单明细的合计,用作报告。
如果你的应用需要连接多个数据库,你需要将每个数据库配置成独立的环境,并且为每一个数据库创建一个
SqlSessionFactory。
我们可以如下为每个环境创建一个 SqlSessionFactory:
创建 SqlSessionFactory 时,如果没有明确指定环境 environment id,则会使用默认的环境 environment 来创
建。在上述的源码中,默认的 SqlSessionFactory 便是使用 shoppingcart 环境设置创建的。
QA(质量评估环境),UAT(用户验收环境),PRODUCTION(生产环境),可以通过将默认 environment 值设置成想要的
environment id 值。
在上述的配置中,默认的环境 environment 被设置成 development。当需要将程序部署到生产服务器上时,你不需
要修改什么配置,只需要将默认环境 environment 值设置成生产环境的 environment id 属性即可。
有时候,我们可能需要在相同的应用下使用多个数据库。比如我们可能有 SHOPPING-CART 数据库来存储所有的订单
明细;使用 REPORTS 数据库存储订单明细的合计,用作报告。
如果你的应用需要连接多个数据库,你需要将每个数据库配置成独立的环境,并且为每一个数据库创建一个
SqlSessionFactory。
<environments default="shoppingcart"> <environment id="shoppingcart"> <transactionManager type="MANAGED" /> <dataSource type="JNDI"> <property name="data_source" value="java:comp/jdbc/ ShoppingcartDS" /> </dataSource> </environment> <environment id="reports"> <transactionManager type="MANAGED" /> <dataSource type="JNDI"> <property name="data_source" value="java:comp/jdbc/ReportsDS" /> </dataSource> </environment> </environments>
我们可以如下为每个环境创建一个 SqlSessionFactory:
InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml"); SqlSessionFactory defaultSqlSessionFactory = new SqlSessionFactoryBuilder(). build(inputStream); SqlSessionFactory cartSqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStre am, "shoppingcart"); SqlSessionFactory reportSqlSessionFactory = new SqlSessionFactoryBuilder(). build(inputStream, "reports");
创建 SqlSessionFactory 时,如果没有明确指定环境 environment id,则会使用默认的环境 environment 来创
建。在上述的源码中,默认的 SqlSessionFactory 便是使用 shoppingcart 环境设置创建的。
相关文章推荐
- hibernate不支持数据库断开后重新连接问题
- SAP 外部数据库连接支持文件的文件名清单
- mybatis的多数据库支持
- 8口短信猫池软件支持长短信连接数据库
- 数据库中文mybatis连接mysql数据库插入中文乱码
- 正好整理了一下,自己做了个连接数据库的组件,支持SQLSERVER,ACCESS,ORACLE,FoxPro,MySql,IBM DB2,DBF等数据库,并且支持事务处理
- [原创] Java JDBC连接数据库,反射创建实体类对象并赋值数据库行记录(支持存储过程)
- Eclipse 连接 SQL Server 2012数据库 (支持jre1.7)(转)
- H2数据库简介及在Web程序中运行的数据库中支持ODBC连接
- 在Oracle sql developer1.54中添加对mysql和sql server2000的数据库连接支持
- 让Django支持数据库长连接(可以提高不少性能哦)
- 2012年最新的LAMP配置-支持mysql-mysqli-pdo_mysql-pdo_dblib-pdo_mssql-支持mssql2000数据库连接
- 安装SCOM2012在连接数据库时报错:" SQL Server 的安装版本不受支持"
- 让Django支持数据库长连接(可以提高不少性能哦)
- IBatisHelper 更新 支持 连接 Oracle 数据库 生成 bin 和 SQLMapper
- mybatis动态连接数据库
- Mybatis深入之获取数据库连接
- 让Django支持数据库长连接(可以提高不少性能哦)
- MyBatis动态连接数据库,动态传入数据库参数
- Linux环境下设置mysql支持远程连接数据库(转载)