如果你只使用MyBatis而没有使用Spring,在每一个方法中,我们需要手动创建SqlSessionFactory对象,并且从SqlSessionFactory对象中创建SqlSession。而且我们还要负责提交或者回滚事务、关闭SqlSession对象。
    通过使用MyBatis-Spring模块,我们可以在Spring的应用上下文ApplicationContext中配置MyBatis Beans,Spring会负责实例化SqlSessionFactory对象以及创建SqlSession对象,并将其注入到DAO或者Service类中。并且,你可以使用Spring的基于注解的事务管理功能,不用自己在数据访问层中书写事务处理代码了。
    整合思路:
    Spring要管理Spring MVC编写的Handler(controller)、Mybatis的SqlSessionFactory、mapper、数据源。
    下面这三步:

    1. 第一步:整合dao(即mapper),完成Spring与Mybatis的整合。
    2. 第二步:整合service,Spring管理service接口,service中可以调用Spring容器中的dao(mapper)
    3. 第三步:整合controller,Spring管理controller接口,在controller调用service。
    • SpringMVC:主要进行页面的 请求接受与响应。
    • 组件包括:前端控制器,处理器映射器,处理器适配器,视图解析器,处理器Handler,视图View。其中,只有处理器Handler和视图View需要程序员开发。
      mvc:annotation-driven/
      mvc:default-servlet-handler/