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

ssm?mybatis如何配置多個mapper目錄

 更新時間:2022年01月10日 10:16:26   作者:信行合一  
這篇文章主要介紹了ssm?mybatis如何配置多個mapper目錄,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教。

ssm mybatis配置多個mapper目錄

通配符配置

比如目錄的結構如下:

com/test/web/user/mapper
com/test/web/order/mapper
com/test/web//mapper

<!-- 掃描 xxxMapper.xml --> ??
? ? <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
? ? ? ? <property name="dataSource" ref="dataSource" />
? ? ? ? <property name="configLocation" ?value="classpath:spring/mybatis-config.xml"/> ?
? ? ? ? <property name="mapperLocations" value="classpath*:com/xxxcompany/xxxproject/*/mapper/*.xml" />
? ? </bean>

<!-- 掃描 xxxMapper -->
? ? <bean id="daoScan" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
? ? ? ? <property name="basePackage" value="com.xxxcompany.xxxproject.*.mapper" />
? ? ? ? <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
? ? </bean>

除了上面這種目錄結構一致的方式,我們還可以使用下面的配置方式,這個意思也就是說只要是符合mapper* 這樣的命名規(guī)則的包都會被掃描到

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
? ? ? ? <property name="dataSource" ref="dataSource" />
? ? ? ? <property name="configLocation" ?value="classpath:mybatis-config.xml"/> ?
? ? ? ? <property name="mapperLocations" value="classpath*:com/dada/**/*Mapper.xml"/>?
? ? </bean>

? ? <!-- 配置掃描器 -->
? ? <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
? ? ? ? <property name="basePackage" value="com.dada.test.mapper*"/>
? ? ? ? <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
? ? </bean>

ssm項目 mappers標簽

mappers標簽標簽的作用

為了讓mybatis找到mapper.xml文件。

在后面的ssm整合項目中,有兩種方式可以代替它

  1. 一個是使用MapperScannerConfigurer
  2. 一個是使用mapperLocation屬性(位于SqlSessionFactoryBean中):mapperLocation屬性,主要用于指定mapper.xml文件所處的位置。

MapperScannerConfigurer可以自動掃描到和接口同包同名的mapper.xml文件

mapperLocation屬性可以指定掃描。

下面來個逆向思考?。?!

在ssm項目中,將mapper.xml文件放進和dao接口不同的包中,這樣的話MapperScannerConfigurer的自動掃描就掃描不到mapper.xml文件了。然后不使用mapperLocation屬性,意思就是使用mappers標簽來代替兩個新方法,來驗證一下。

但是結果卻和我想的不一樣?。?!下面我來說我遇到的一些坑?。?!

mappers標簽的配置方式有4種

<!-- 1.使用相對于類路徑的資源引用 -->
<mappers>
? <mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
</mappers>
<!-- 2.使用完全限定資源定位符(URL) -->
<mappers>
? <mapper url="file:///var/mappers/AuthorMapper.xml"/>
</mappers>
<!-- 3.使用映射器接口實現類的完全限定類名 -->
<mappers>
? <mapper class="org.mybatis.builder.AuthorMapper"/>
? <mapper class="org.mybatis.builder.BlogMapper"/>
? <mapper class="org.mybatis.builder.PostMapper"/>
</mappers>
<!-- 4.將包內的映射器接口實現全部注冊為映射器 -->
<mappers>
? <package name="org.mybatis.builder"/>
</mappers>
  1. 使用第3種和第4種方法需要和MapperScannerConfigurer一樣,將mapper.xml文件和dao接口同名同包。
  2. 對于第一種方法,我們需要注意的是:/ 和 .

蜿蜒曲折的探究道路

對于指定類路徑的資源引用的方式,也就是第一種方式,我將mapper.xml文件所在包放進了dao接口所在包的子包。結果idea提示說找不到mapper.xml文件,然后我又調了一會(將mapper.xml文件所在包改變位置后)可以正常運行,然后我就以為mapper.xml文件所在包不能放進了dao接口所在包的子包。我又重新把mapper.xml文件所在包放進了dao接口所在包的子包,結果能正常運行了。

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

相關文章

  • java 輸出九九乘法表口訣的代碼

    java 輸出九九乘法表口訣的代碼

    這篇文章主要介紹了java 輸出9*9口訣的代碼,需要的朋友可以參考下
    2017-02-02
  • 騰訊云部署javaWeb項目的實現步驟

    騰訊云部署javaWeb項目的實現步驟

    本文主要介紹了騰訊云部署javaWeb項目的實現步驟,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Java的MyBatis快速入門和實戰(zhàn)詳解

    Java的MyBatis快速入門和實戰(zhàn)詳解

    這篇文章主要介紹了Java的MyBatis快速入門和實戰(zhàn)詳解,MyBatis是一款優(yōu)秀的持久層框架,用于簡化JDBC開發(fā),是一套可重用的,通用的,軟件基礎代碼模型,需要的朋友可以參考下
    2023-05-05
  • java中Lambda常用場景代碼實例

    java中Lambda常用場景代碼實例

    這篇文章主要介紹了java中Lambda常用場景,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • SpringBoot使用JSP作為視圖模板的方法

    SpringBoot使用JSP作為視圖模板的方法

    這篇文章主要介紹了SpringBoot使用JSP作為視圖模板的方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • java定時調度器(Quartz)使用實例

    java定時調度器(Quartz)使用實例

    這篇文章主要介紹了java開源定時調度器使用方法
    2013-12-12
  • Spring5使用JSR 330標準注解的方法

    Spring5使用JSR 330標準注解的方法

    從Spring3.0之后,除了Spring自帶的注解,我們也可以使用JSR330的標準注解,本文主要介紹了Spring5使用JSR 330標準注解,感興趣的可以了解一下
    2021-09-09
  • Java堆內存又溢出了!教你一招必殺技(推薦)

    Java堆內存又溢出了!教你一招必殺技(推薦)

    這篇文章主要介紹了Java內存溢出問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • JVM實戰(zhàn)系列之CPU100%和內存100%排查

    JVM實戰(zhàn)系列之CPU100%和內存100%排查

    本文主要介紹了JVM實戰(zhàn)系列之CPU100%和內存100%排查,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • Idea中mapper注入報錯問題及解決

    Idea中mapper注入報錯問題及解決

    這篇文章主要介紹了Idea中mapper注入報錯問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03

最新評論