Spring整合mybatis实现过程详解

网友投稿 238 2022-12-01


Spring整合mybatis实现过程详解

增加了用于处理MyBatis的两个bean:SqlSessionFactoryBean、MapperFachttp://toryBean

1、注册SqlSessionFactoryBean:

(1)实现 InitializingBean:调用其afterPropertiesSet方法(this.sqlSessionFactory = buildSqlSessionFactory())

目的就是对于sqlSessionFactory的初始化。

(2)FactoryBean:getBean方法获取bean(= 获取此类的getObject()返回的实例)

if (this.sqlSessionFactory == null) {

afterPropertiesSet();

}

return this.sqlSessionFactory;

2、注册MapperFactoryBean:

同样实现FactoryBean和InitializingBean

this.sqlSessionTemplate = createSqlSessionTemplate(sqlSessionFactory);

//sqlSession作为根据接口创建映射器代理的接触类一定不可以为空,

设定其sqlSessionFactory属性时完成初始化。

//接口是映射器的基础,sqlSession会根据接口动态创建相应的代理类,所以接口必不可少。

1.0:UserMapphttp://er userMapper = sqlSession.getMapper(UserMapper.class);

2.0:UserMapper userMapper = (UserMapper) context.getBean("userMapper");

//MyBatis在获取映射的过程中http://根据配置信息为UserMapper类型动态创建了代理类

3、使用MapperScannerConfigurer:

让它扫描特定的包,自动帮我们成批地创建映射器。不需要我们对于每个接口都注册一个MapperFactoryBean类型的对应的bean,在扫描的过程中通过编码的方式动态注册。

抽象:屏蔽掉了最原始的代码(userMapper的创建)而增加了MapperScannerConfigurer的配置


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:基于IOC容器实现管理mybatis过程解析
下一篇:java中Servlet监听器的工作原理及示例详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~