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

解決springboot生成bean名稱沖突(AnnotationBeanNameGenerator)

 更新時(shí)間:2022年03月24日 11:51:11   作者:生產(chǎn)隊(duì)隊(duì)長(zhǎng)  
這篇文章主要介紹了解決springboot生成bean名稱沖突(AnnotationBeanNameGenerator),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

springboot生成bean名稱沖突

問(wèn)題描述

我們?cè)偈褂胹pringboot的時(shí)候,在不同的文件目錄下,可能存在相同名稱的java類(lèi),這個(gè)時(shí)候會(huì)報(bào)bean name沖突錯(cuò)誤

首先我們來(lái)了解下,springboot生成bean名稱的原理

當(dāng)Component,Respository,Service,Controller注解的value樹(shù)形沒(méi)有自定義時(shí),會(huì)根據(jù)類(lèi)的名稱生成一個(gè)短的bean name。例如: com.xyz.FooServiceImpl -> fooServiceImpl

也就是說(shuō),會(huì)忽略路徑,生成首字母小寫(xiě)的bean name,所以,上面哪種情況會(huì)導(dǎo)致沖突

但是由于我們平時(shí)編碼的習(xí)慣,幾乎避免了這個(gè)重名文件的存在,所以,沒(méi)遇到過(guò)這個(gè)錯(cuò)誤

解決問(wèn)題

使用自定義AnnotationBeanNameGenerator

@SpringBootApplication
@RestController
@ComponentScan(nameGenerator = DatabasesApplication.SpringBeanNameGenerator.class)
public class DatabasesApplication {
    public static class SpringBeanNameGenerator extends AnnotationBeanNameGenerator {
        @Override
        protected String buildDefaultBeanName(BeanDefinition definition) {
            return definition.getBeanClassName();
        }
    }
    public static void main(String[] args) {
        SpringApplication.run(DatabasesApplication.class, args);
    }
    @GetMapping("/hello")
    public String hello(){
        return "hello databases!";
    }
}

我是在做springboot實(shí)現(xiàn)多數(shù)據(jù)源時(shí)還有個(gè)其他地方使用

MapperScan注解中使用

@MapperScan(basePackages = "com.databases.databases.dao.one", sqlSessionFactoryRef = "oneSqlSessionFactory",nameGenerator = DatabasesApplication.SpringBeanNameGenerator.class)

自定義bean對(duì)象重名問(wèn)題

在已經(jīng)有對(duì)象的情況下,設(shè)置bean加載的時(shí)候注意不要重名

不然啟動(dòng)不了,會(huì)給你提示在配置文件中添加spring.main.allow-bean-definition-overriding=true  這個(gè)東西的意思是當(dāng)有重名bean的時(shí)候覆蓋上一個(gè),不建議使用,畢竟每個(gè)bean對(duì)象都是獨(dú)特的

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

相關(guān)文章

  • SpringBoot生成jar/war包的布局應(yīng)用

    SpringBoot生成jar/war包的布局應(yīng)用

    在 Spring Boot 中,"布局應(yīng)用"(Application Layout)指的是打包生成的可執(zhí)行 jar 或 war 文件中的內(nèi)容組織結(jié)構(gòu),本文給大家介紹了SpringBoot生成jar/war包的布局應(yīng)用,需要的朋友可以參考下
    2024-02-02
  • SpringMVC HttpMessageConverter報(bào)文信息轉(zhuǎn)換器

    SpringMVC HttpMessageConverter報(bào)文信息轉(zhuǎn)換器

    ??HttpMessageConverter???,報(bào)文信息轉(zhuǎn)換器,將請(qǐng)求報(bào)文轉(zhuǎn)換為Java對(duì)象,或?qū)ava對(duì)象轉(zhuǎn)換為響應(yīng)報(bào)文。???HttpMessageConverter???提供了兩個(gè)注解和兩個(gè)類(lèi)型:??@RequestBody,@ResponseBody???,??RequestEntity,ResponseEntity??
    2023-01-01
  • Java基礎(chǔ)之方法重寫(xiě)和多態(tài)示例

    Java基礎(chǔ)之方法重寫(xiě)和多態(tài)示例

    這篇文章主要介紹了Java基礎(chǔ)之方法重寫(xiě)和多態(tài),結(jié)合實(shí)例形式分析了java方法重寫(xiě)和多態(tài)的相關(guān)原理與使用技巧,需要的朋友可以參考下
    2019-08-08
  • springboot使用校驗(yàn)框架validation校驗(yàn)的示例

    springboot使用校驗(yàn)框架validation校驗(yàn)的示例

    這篇文章主要介紹了springboot使用校驗(yàn)框架validation校驗(yàn)的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • 百度Java面試題 前200頁(yè)精選(下)

    百度Java面試題 前200頁(yè)精選(下)

    這篇文章主要為大家分享了Java面試資源下篇,百度“Java面試題”前200頁(yè)都在這里了,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • 淺談java實(shí)現(xiàn)mongoDB的多條件查詢

    淺談java實(shí)現(xiàn)mongoDB的多條件查詢

    這篇文章主要介紹了java實(shí)現(xiàn)mongoDB的多條件查詢,具有一定參考價(jià)值,需要的朋友可以參考下。
    2017-09-09
  • SpringMVC---配置與使用的示例

    SpringMVC---配置與使用的示例

    這篇文章主要介紹了SpringMVC---配置與使用的示例,幫助大家更好的理解和學(xué)習(xí)spring框架,感興趣的朋友可以了解下
    2020-10-10
  • springboot整合vue2-uploader實(shí)現(xiàn)文件分片上傳、秒傳、斷點(diǎn)續(xù)傳功能

    springboot整合vue2-uploader實(shí)現(xiàn)文件分片上傳、秒傳、斷點(diǎn)續(xù)傳功能

    對(duì)于大文件的處理,無(wú)論是用戶端還是服務(wù)端,如果一次性進(jìn)行讀取發(fā)送、接收都是不可取,很容易導(dǎo)致內(nèi)存問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于springboot整合vue2-uploader實(shí)現(xiàn)文件分片上傳、秒傳、斷點(diǎn)續(xù)傳功能的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • 淺談mybatis中的#和$的區(qū)別

    淺談mybatis中的#和$的區(qū)別

    下面小編就為大家?guī)?lái)一篇淺談mybatis中的#和$的區(qū)別。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • java 矩陣乘法的mapreduce程序?qū)崿F(xiàn)

    java 矩陣乘法的mapreduce程序?qū)崿F(xiàn)

    這篇文章主要介紹了java 矩陣乘法的mapreduce程序?qū)崿F(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2017-06-06

最新評(píng)論

潜山县| 左云县| 隆化县| 光山县| 香河县| 霍州市| 德州市| 黄平县| 会理县| 海丰县| 景泰县| 香河县| 黄骅市| 县级市| 连城县| 乌拉特前旗| 定日县| 珠海市| 辽阳市| 定边县| 正阳县| 塘沽区| 黑水县| 卢湾区| 剑川县| 长岛县| 南京市| 林芝县| 资源县| 宝清县| 新龙县| 宜兰县| 沭阳县| 成都市| 武威市| 南通市| 黄平县| 沽源县| 湖口县| 耒阳市| 安多县|