Spring Boot数据访问之整合Mybatis

 在Mybatis整合Spring - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中谈到了Spring和Mybatis整合需要整合的点在哪些方面,需要将Mybatis中数据库连接池等相关对象交给Spring管理,需要进行bean的相关配置。Spring Boot与Mybatis的整合更加简化都不用配置,直接导入依赖坐标即可(在Spring Boot数据访问之数据源自动配置 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)的基础上),如下:

    

  测试案例:

    

   测试结果:

    

   这个过程没有任何关于mybatis数据源连接池等方法的配置,直接使用了mybatis创建的resumeDao。

  以上整合过程应该同Mybatis整合Spring一样需要做到一下几点:

    1)数据库连接池以及事务管理都交给Spring容器完成;

    2)SqlSessionFactory对象应该放到Spring容器中作为单例对象管理;

    3)Mapper动态代理对象交给Spring管理,需要时从Spring容器中直接获得Mapper的代理对象。

  那么看看mybatis-spring-boot-starter怎么处理的,与Mybatis整合Spring - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中的处理是否有区别?

  查看其下spring.factories文件找到自动配置类

    

  阅读这个类的源码,其自动配置就是在这个类中将Mybatis中对外提供接口利用java Bean方式进行了配置注入到Spring容器,具体源码不在此处分析了。

 

posted on 2021-11-22 19:50  池塘里洗澡的鸭子  阅读(43)  评论(0编辑  收藏  举报