最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Spring掃描Mybatis的mapper接口的三種配置

 更新時間:2021年08月10日 09:25:35   作者:1 Byte  
這篇文章主要介紹了使用Spring掃描Mybatis的mapper接口的三種配置,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Spring掃描Mybatis的mapper接口的配置

1.前言

mybatis支持與spring結(jié)合使用,使得mybatis中的mapper接口可以作為spring容器中的bean被應(yīng)用代碼中相關(guān)類,如Service類,通過@Autowired自動注入進(jìn)來。

在使用方面需要在項目中引入以下包:

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>1.3.1</version>
</dependency>

2. 在spring中可以通過三種方式

來自動掃描獲取應(yīng)用代碼的mybatis相關(guān)的mapper接口定義:

2.1在applicationContext.xml中使用<mybatis:scan />

<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:context="http://www.springframework.org/schema/context"
   xmlns:tx="http://www.springframework.org/schema/tx"
   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-3.0.xsd
   http://www.springframework.org/schema/context 
   http://www.springframework.org/schema/context/spring-context-3.0.xsd
   http://www.springframework.org/schema/tx
   http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
 
   ...
 
    <!-- mybatis -->
   <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
     <property name="dataSource" ref="dataSource" />
     <property name="mapperLocations" value="classpath:mybatis/mapper/**/*.xml" />
     <property name="configLocation" value="classpath:mybatis/mybitas-config.xml"
        />
   </bean>
   <mybatis:scan base-package="cn.cggeeker.dao"/>
   
   ...
</beans>

2.2在applicationContext.xml中

使用bean標(biāo)簽注冊MapperScannerConfigurer,即:

<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:context="http://www.springframework.org/schema/context"
   xmlns:tx="http://www.springframework.org/schema/tx"
   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-3.0.xsd
   http://www.springframework.org/schema/context 
   http://www.springframework.org/schema/context/spring-context-3.0.xsd
   http://www.springframework.org/schema/tx
   http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
   
   ...
   
    <!-- mybatis -->
   <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
     <property name="dataSource" ref="dataSource" />
     <property name="mapperLocations" value="classpath:mybatis/mapper/**/*.xml" />
     <property name="configLocation" value="classpath:mybatis/mybitas-config.xml"            />
   </bean>
   
   <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
     <property name="basePackage" value="cn.cggeeker.dao" />
   </bean>
   
   ...
   
</beans>

2.3如果應(yīng)用是使用Java配置方式而不是XML

則在@Configuration配置類使用@MapperScan或者@MapperScans注解:

@Configuration
@MapperScan("cn.cggeeker.dao")
public class AppConfig {
 
    @Bean
    public DataSource dataSource() {
        return new PooledDataSource("com.mysql.jdbc.Driver",
                   "jdbc:mysql://localhost:3306/test", "root", "root");
    }
 
    @Bean
    public SqlSessionFactory sqlSessionFactory() throws Exception {
        SqlSessionFactoryBeansessionFactory = new SqlSessionFactoryBean();
        sessionFactory.setDataSource(dataSource());
        return sessionFactory.getObject();
    }
}

Spring配置掃描mybatis的mapper文件注意

一般會將不業(yè)務(wù)的mapper文件放到不同的包中:

spring配置掃描就需要配置下面的方式(兩個*):

<!-- mybatis文件配置,掃描所有mapper文件 -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"
        p:dataSource-ref="dataSource" p:configLocation="classpath:conf/mybatis-config.xml"
        p:mapperLocations="classpath:mapper/**/*.xml" />

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

高雄县| 宾川县| 伊宁市| 博兴县| 海南省| 泸州市| 潮州市| 栖霞市| 封丘县| 义马市| 宁远县| 七台河市| 广德县| 陈巴尔虎旗| 华亭县| 迭部县| 桃园县| 裕民县| 津市市| 中阳县| 西畴县| 青铜峡市| 剑河县| 蒙城县| 嘉义县| 金堂县| 霍林郭勒市| 将乐县| 略阳县| 顺昌县| 清水县| 广丰县| 若尔盖县| 苏尼特右旗| 九龙县| 新绛县| 鄂州市| 金阳县| 两当县| 桃源县| 兴仁县|