Mybatis学习笔记五:集成Spring

在上一章中,实现了关联查询,大概了解了Mybatis的基本用法,但在真正的项目中还是要跟Spring一起来用,本章主要说明Mybatis如何集成Spring

1、添加Spring配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!-- 使用常见的c3p0数据连接池进行连接 -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="user" value="root"/>
        <property name="password" value="zsfarther"/>
        <property name="jdbcUrl" value="jdbc:mysql://127.0.0.1:3306/mybatis-chapter1"/>
        <property name="driverClass" value="com.mysql.jdbc.Driver"/>
    </bean>

    <!-- 配置sessionfactory -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <!-- 指定数据源 -->
        <property name="dataSource" ref="dataSource"/>
        <!-- 指定mybatis配置文件 -->
        <property name="configLocation" value="mybatis-config.xml"/>
    </bean>

    <bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
        <!-- 指定mapper -->
        <property name="mapperInterface" value="com.dfz.mybatis.mapper.UserMapper"/>
        <!-- 指定sessionfactory -->
        <property name="sqlSessionFactory" ref="sqlSessionFactory"/>
    </bean>
</beans>

从spring配置文件可以看出,mybatis集成spring主要做三件事情:
1)配置数据源;
2)配置sessionfactory;
3)指定mapper接口。

测试代码如下,其余代码不做变更:

private ApplicationContext ctx;

    @Before
    public void before() {
        ctx = new ClassPathXmlApplicationContext("spring-config.xml");
    }

    @Test
    public void test() {
        System.out.println("------------查询方法测试开始------------");
        UserMapper userMapper = (UserMapper) ctx.getBean("userMapper");
        System.out.println("------------测试查询用户------------");
        System.out.println(userMapper.selectUserByID(1));
        System.out.println("------------测试查询用户的文章------------");
        List<Article> articles = userMapper.getUserArticles(1);
        System.out.println(articles);
    }

输出结果如下:
测试结果

2、总结

Mybatis集成Spring主要做三件事情,即将Mybatis的启动,配置交给Spring管理,主要有:
1)配置数据源;
2)配置sessionfactory;
3)指定mapper接口。
未尽之处后期再补,代码下载地址:https://github.com/EdwardEricZhang/MybatisFun

没有更多推荐了,返回首页