spring3整合mybatis3配置多数据源动态选择sqlsessionfactory

spring3整合mybatis3配置多数据源动态选择sqlsessionfactory

ID:34725756

大小:79.75 KB

页数:21页

时间:2019-03-10

spring3整合mybatis3配置多数据源动态选择sqlsessionfactory_第1页
spring3整合mybatis3配置多数据源动态选择sqlsessionfactory_第2页
spring3整合mybatis3配置多数据源动态选择sqlsessionfactory_第3页
spring3整合mybatis3配置多数据源动态选择sqlsessionfactory_第4页
spring3整合mybatis3配置多数据源动态选择sqlsessionfactory_第5页
资源描述:

《spring3整合mybatis3配置多数据源动态选择sqlsessionfactory》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、一、摘要上两篇文章分别介绍了Spring3.3整合Hibernate3、MyBatis3.2配置多数据源/动态切换数据源方法 和 Spring3整合Hibernate3.5动态切换SessionFactory(切换数据库方言),这篇文章将介绍Spring整合Mybatis如何完成SqlSessionFactory的动态切换的。并且会简单的介绍下MyBatis整合Spring中的官方的相关代码。Spring整合MyBatis切换SqlSessionFactory有两种方法,第一、继承SqlSessionDaoSupport,重写获取SqlSessionFactory的方法。第二、继承S

2、qlSessionTemplate重写getSqlSessionFactory、getConfiguration和SqlSessionInterceptor这个拦截器。其中最为关键还是继承SqlSessionTemplate并重写里面的方法。而Spring整合MyBatis也有两种方式,一种是配置MapperFactoryBean,另一种则是利用MapperScannerConfigurer进行扫描接口或包完成对象的自动创建。相对来说后者更方便些。MapperFactoryBean继承了SqlSessionDaoSupport也就是动态切换SqlSessionFactory的第一种方

3、法,我们需要重写和实现SqlSessionDaoSupport方法,或者是继承MapperFactoryBean来重写覆盖相关方法。如果利用MapperScannerConfigurer的配置整合来切换SqlSessionFactory,那么我们就需要继承SqlSessionTemplate,重写上面提到的方法。在整合的配置中很多地方都是可以注入SqlSessionTemplate代替SqlSessionFactory的注入的。因为SqlSessionTemplate的创建也是需要注入SqlSessionFactory的。 二、实现代码1、继承SqlSessionTemplate重写

4、getSqlSessionFactory、getConfiguration和SqlSessionInterceptorpackagecom.hoo.framework.mybatis.support; importstaticjava.lang.reflect.Proxy.newProxyInstance;importstaticorg.apache.ibatis.reflection.ExceptionUtil.unwrapThrowable;importstaticorg.mybatis.spring.SqlSessionUtils.closeSqlSession;imports

5、taticorg.mybatis.spring.SqlSessionUtils.getSqlSession;importstaticorg.mybatis.spring.SqlSessionUtils.isSqlSessionTransactional; importjava.lang.reflect.InvocationHandler;importjava.lang.reflect.Method;importjava.sql.Connection;importjava.util.List;importjava.util.Map; importorg.apache.ibatis.ex

6、ceptions.PersistenceException;importorg.apache.ibatis.executor.BatchResult;importorg.apache.ibatis.session.Configuration;importorg.apache.ibatis.session.ExecutorType;importorg.apache.ibatis.session.ResultHandler;importorg.apache.ibatis.session.RowBounds;importorg.apache.ibatis.session.SqlSessio

7、n;importorg.apache.ibatis.session.SqlSessionFactory;importorg.mybatis.spring.MyBatisExceptionTranslator;importorg.mybatis.spring.SqlSessionTemplate;importorg.springframework.dao.support.PersistenceExceptionTranslator;importorg.spr

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。