mybatis xml和dao扫描写法

本文详细介绍了两种不同的MyBatis配置方法:当接口与XML文件不在同一目录时如何配置,以及当它们位于同一目录下的配置方式。对于第一种情况,需要在sqlSessionFactoryBean中额外指定XML的路径;而第二种情况则简化了配置过程。

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

第一种:接口和xml不在同一个目录,需要在sqlSessionFactoryBean中额外 指定xml的路径:

    <!-- myBatis文件 -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="configLocation" value="classpath:mybatis-config.xml" />
        <!-- 自动扫描entity目录, 省掉Configuration.xml里的手工配置 -->
        <property name="mapperLocations">
            <list>
                <value>classpath:com/liuyx/**/mappers/${db}/*.xml</value>
            </list>
        </property>
        <property name="plugins">
            <array>
                <ref bean="pagePlugin" />
            </array>
        </property>
    </bean>
    
    <!-- mapper接口namepspace绑定方式 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.liuyx.base.**.dao" /><!-- 多个使用逗号分隔 -->
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
    </bean>

 

第二种,接口和xml在同一个路径下,可以只配置MapperScannerConfigurer下的basePackage:

<!-- 配置Mybatis  SqlSessionFactory  会话工厂 -->
     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <!-- 数据源 -->
        <property name="dataSource" ref="dataSource"/>
        <!-- 配置Mybatis的核心 配置文件 -->
        <property name="configLocation" value="classpath:mybatis-config.xml"/> 
     </bean>
     
     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
         <!-- 基础包 包下所的接口全扫描  -->
         <property name="basePackage" value='com.liuyx.**.dao' />
         <!-- 注入工厂 -->
         <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
     </bean>

 

有时间的童鞋可以自己看看源码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值