1、怎么配置配置省略了
注意:(1)配置切面拦截service 设置database标识就是你要使用哪个数据源)
(2)自定义数据源继承org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource
2、我们在项目中用来读写分离
3、沿着这个类路径看找到原理
(1)org.mybatis.spring.SqlSessionFactoryBean
默认使用spring提供的事务管理工厂
(2)org.apache.ibatis.session.defaults.DefaultSqlSessionFactory
eg:
final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);返回的是spring提供的事务管理工厂
(3)
返回org.mybatis.spring.transaction.SpringManagedTransaction
(4)org.apache.ibatis.session.defaults.DefaultSqlSession
eg:
(5)org.apache.ibatis.executor.SimpleExecutor
stmt = prepareStatement(handler, ms.getStatementLog());
(6)org.mybatis.spring.transaction.SpringManagedTransaction
(7)org.springframework.jdbc.datasource.DataSourceUtils
这边获取到你传递的database,回调之后获取你切面中设置的数据源
Spring(3.2.8) + Mybatis(1.2.5)动态数据源路由大致过程
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.