mybatis xml和dao掃描寫法


第一種:接口和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>

 

有時間的童鞋可以自己看看源碼。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM