Java中Mapper同名的解決方式
問題描述

問題復(fù)現(xiàn)
- 準(zhǔn)備一個demo命名,架構(gòu)如下圖所示:

- application.yml文件如下所示:
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
map-underscore-to-camel-case: true # 控制臺輸出sql、下劃線轉(zhuǎn)駝峰
mapper-locations:
- classpath*:com/example/mapper/xml/*.xml
- classpath*:com/example/othermapper/xml/*.xml
spring:
datasource:
driver-class-name: org.postgresql.Driver
username: postgres
password: 123456
url: jdbc:postgresql://localhost:5432/star_chat
3.準(zhǔn)備兩個同名Mapper,這里使用的是UserMapper
//@Repository("otherMapper")
public interface UserMapper extends BaseMapper<User> {
}
4.pom.xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
- 使用的是mybaits-plus,按其規(guī)則完成配置
- 啟動Main
解決方案
在同名的Mapper中,使用注解@Repository("otherMapper"),為該Mapper起一個別名作為區(qū)分,在這個項目中,只需要標(biāo)注一個就可以解決該問題,而在一些自定義的配置中可能會不生效,需要同名的Mapper都另起不同的別名加以區(qū)分才能正常注入
應(yīng)用場景
一個項目中將別的項目的代碼拷貝在該項目中,出現(xiàn)了Mapper同名的情況,這個情況下,不想重命名Mapper可以使用該方案
到此這篇關(guān)于Java中Mapper同名的解決方式的文章就介紹到這了,更多相關(guān)Java Mapper同名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java批量下載將多個文件(minio中存儲)壓縮成一個zip包代碼示例
在Java應(yīng)用程序中有時我們需要從多個URL地址下載文件,并將這些文件打包成一個Zip文件進(jìn)行批量處理或傳輸,這篇文章主要給大家介紹了關(guān)于java批量下載將多個文件(minio中存儲)壓縮成一個zip包的相關(guān)資料,需要的朋友可以參考下2023-11-11
如何通過RabbitMq實現(xiàn)動態(tài)定時任務(wù)詳解
工作中經(jīng)常會有定時任務(wù)的需求,常見的做法可以使用Timer、Quartz、Hangfire等組件,這次想嘗試下新的思路,使用RabbitMQ死信隊列的機(jī)制來實現(xiàn)定時任務(wù),下面這篇文章主要給大家介紹了關(guān)于如何通過RabbitMq實現(xiàn)動態(tài)定時任務(wù)的相關(guān)資料,需要的朋友可以參考下2022-01-01
Thread線程的基礎(chǔ)知識及常見疑惑點總結(jié)
在本篇內(nèi)容里小編給大家分享的是關(guān)于Thread線程的基礎(chǔ)知識及常見疑惑點,對此有學(xué)習(xí)需求的朋友們可以學(xué)習(xí)參考下。2019-05-05
Java的動態(tài)分派和靜態(tài)分派的實現(xiàn)
這篇文章主要介紹了Java的動態(tài)分派和靜態(tài)分派的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
Java基于FFmpeg實現(xiàn)Mp4視頻轉(zhuǎn)GIF
FFmpeg是一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的開源計算機(jī)程序。本文主要介紹了在Java中如何基于FFmpeg進(jìn)行Mp4視頻到Gif動圖的轉(zhuǎn)換,感興趣的小伙伴可以了解一下2022-11-11

