spring整合mybatis的xml配置

本文介绍了Spring整合Mybatis的两种常见方式。一种是将全局XML中的对象配置到Spring容器,通过注解实现SQL;另一种是保留全局XML和接口XML,适用于处理复杂SQL,且便于使用MybatisGenerator工具生成代码,支持缓存等特殊配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 之前在SSM之Mybatis概览_数字公民某杨的博客-CSDN博客有这个示意图:

mybatis框架有两类xml配置,一个是全局的xml,另一类是单个接口的xml.

当spring整合mybatis,似乎看到有两种整合方式.

一种是把全局的xml里面生成的对象,全部配置到spring容器的bean对象,然后甚至可以不要全局.xml,也不要接口的xml,直接在接口方法上增加sql语句的注解.例如@Select("select * from xxx")。

<!--    配置工厂bean-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"/>
<!--    配置mapper层扫描-->
    <bean id="mapper" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
        <property name="basePackage" value="com.tugou.mapper"/>
    </bean>

还有一种是仍然保留全局。xml,然后在spring的容器中作为sqlsessionfactroy的组装对象,接口的xml也予以保留。这种做法的好处应该是,当使用复杂的sql语句,直接在方法上用注解方式并不是太方便。然后这种方式可以用mybatisgenerator工具生成sql语句,起到类似hibernate的效果吧。保留全局的xml还有个好处,就是当设置一些mybatis缓存等一些特殊配置的时候,保留的好处是显而易见的。

<!--    sqlSessionFactory-->
    <bean id="factory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="configLocation" value="classpath:SqlMapConfig.xml"/>
    </bean>
<!--    mapper扫描-->
    <bean id="mapper" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="sqlSessionFactoryBeanName" value="factory"/>
        <property name="basePackage" value="com.tugou.Dao"/>
    </bean>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值