欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

Spring掃描Mybatis的mapper接口的配置

1.前言

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

在使用方面需要在項(xiàng)目中引入以下包:

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

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

來自動(dòng)掃描獲取應(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文件注意

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

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

<!-- 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" />

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

相關(guān)文章

  • 如何使用try-with-resource機(jī)制關(guān)閉連接

    如何使用try-with-resource機(jī)制關(guān)閉連接

    這篇文章主要介紹了使用try-with-resource機(jī)制關(guān)閉連接的操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java實(shí)現(xiàn)較大二進(jìn)制文件的讀、寫方法

    Java實(shí)現(xiàn)較大二進(jìn)制文件的讀、寫方法

    本篇文章主要介紹了Java實(shí)現(xiàn)較大二進(jìn)制文件的讀、寫方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-02-02
  • JavaMail實(shí)現(xiàn)發(fā)送超文本(html)格式郵件的方法

    JavaMail實(shí)現(xiàn)發(fā)送超文本(html)格式郵件的方法

    這篇文章主要介紹了JavaMail實(shí)現(xiàn)發(fā)送超文本(html)格式郵件的方法,實(shí)例分析了java發(fā)送超文本文件的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • MongoDB中ObjectId的誤區(qū)及引起的一系列問題

    MongoDB中ObjectId的誤區(qū)及引起的一系列問題

    這篇文章主要介紹了MongoDB中ObjectId的誤區(qū)及引起的一系列問題,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-12-12
  • Java使用強(qiáng)大的Elastisearch搜索引擎實(shí)例代碼

    Java使用強(qiáng)大的Elastisearch搜索引擎實(shí)例代碼

    本篇文章主要介紹了Java使用強(qiáng)大的Elastisearch搜索引擎實(shí)例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下
    2017-05-05
  • Mybatis 逆向工程的三種方法詳解

    Mybatis 逆向工程的三種方法詳解

    這篇文章主要介紹了Mybatis 逆向工程的三種方法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • 深入解析MybatisPlus多表連接查詢

    深入解析MybatisPlus多表連接查詢

    在一些復(fù)雜的業(yè)務(wù)場景中,我們經(jīng)常會(huì)遇到多表連接查詢的需求,本文主要介紹了深入解析MybatisPlus多表連接查詢,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06
  • 最全面的JVM優(yōu)化經(jīng)驗(yàn)總結(jié)

    最全面的JVM優(yōu)化經(jīng)驗(yàn)總結(jié)

    這篇文章主要介紹了最全面的JVM優(yōu)化經(jīng)驗(yàn)總結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,,需要的朋友可以參考下
    2019-06-06
  • 解決springboot集成rocketmq關(guān)于tag的坑

    解決springboot集成rocketmq關(guān)于tag的坑

    這篇文章主要介紹了解決springboot集成rocketmq關(guān)于tag的坑,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Java中的LinkedHashSet源碼解讀

    Java中的LinkedHashSet源碼解讀

    這篇文章主要介紹了Java中的LinkedHashSet源碼解讀,LinkedHashSet?是?Java?中的一個(gè)集合類,它是?HashSet?的子類,并實(shí)現(xiàn)了?Set?接口,與?HashSet?不同的是,LinkedHashSet?保留了元素插入的順序,并且具有?HashSet?的快速查找特性,需要的朋友可以參考下
    2023-09-09

最新評論