• Mybatis学习记录(八)----Mybatis整合Spring


    1、整合思路

    需要spring通过单例方式管理SqlSessionFactory。

    spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession。(spring和mybatis整合自动完成)

    持久层的mapper都需要由spring进行管理。

    2、整合环境

    创建一个新的java工程

    jar包:

    mybatis3.3.0的jar包

    Spring4.1.2的jar包

    mybatis和spring的整合包:早期ibatis和spring整合是由spring官方提供,mybatis和spring整合由mybatis提供。

    Mybatis-spring-1.2.4.jar

    clip_image001

    3、sqlSessionFactory

    在applicationContext.xml配置sqlSessionFactory和数据源

    sqlSessionFactory在mybatis和spring的整合包下。

    clip_image002

    4、原始dao开发(和spring整合后)

    4.1 User.xml

    clip_image003

    在SqlMapconfig.xml中加载User.xml

    clip_image004

    4.2 dao(实现类继承SqlSessionDaoSupport)

    clip_image005

    dao接口实现类需要注入SqlSessoinFactory,通过spring进行注入。

    这里spring声明配置方式,配置dao的bean:

    让UserDaoImpl实现类继承SqlSessionDaoSupport

    clip_image006

    4.3 配置dao

    在applicationContext.xml中配置dao。

    clip_image007

    4.4 测试程序

    clip_image008

    5、mapper代理开发

    5.1 mapper.xml和mapper.java

    clip_image009

    5.2 通过MapperFactoryBean创建代理对象

    clip_image010

    此方法问题:

    需要针对每个mapper进行配置,麻烦。

    5.3 通过MapperScannerConfigurer进行mapper扫描(建议使用)

    clip_image011

    由于配置了自动扫描,因此不需要再在SqlMapConfig中配置Mapper的扫描。

    clip_image012

    5.4 测试代码

    clip_image013

    5.5 测试结果

    clip_image014

  • 相关阅读:
    ZOJ
    ZOJ
    ZOJ
    ZOJ
    04-树7 二叉搜索树的操作集(30 point(s)) 【Tree】
    05-树8 File Transfer(25 point(s)) 【并查集】
    PAT 天梯赛 L2-025. 分而治之 【图】
    PAT 天梯赛 L2-028. 秀恩爱分得快 【数据处理】
    2018年东北农业大学春季校赛 E wyh的集合 【数学】
    2018年东北农业大学春季校赛 E wyh的阶乘 【数学】
  • 原文地址:https://www.cnblogs.com/doctorJoe/p/5292108.html
Copyright © 2020-2023  润新知