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

解決springboot報(bào)錯(cuò)找不到自動(dòng)注入的service問(wèn)題

 更新時(shí)間:2021年08月12日 11:13:04   作者:Sum_mer_1121  
這篇文章主要介紹了解決springboot報(bào)錯(cuò)找不到自動(dòng)注入的service問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

springboot報(bào)錯(cuò)找不到自動(dòng)注入的service

找了不少資料,最后發(fā)現(xiàn)是每個(gè)service接口(雖然已經(jīng)使用了@service注解)的實(shí)現(xiàn)類(lèi)都需要加上@service注解。

如果是使用junit生成的測(cè)試類(lèi),發(fā)現(xiàn)無(wú)法自動(dòng)注入服務(wù)的話

在test啟動(dòng)類(lèi)前加上

@RunWith(SpringRunner.class)
@SpringBootTest
@ComponentScan("com.XXX.service")

這是因?yàn)閠est包和啟動(dòng)類(lèi)不在同一個(gè)包或子包下,無(wú)法自動(dòng)注入

Springboot Service不被識(shí)別

根據(jù)以往經(jīng)驗(yàn),在Mapper接口沒(méi)有添加注解的情況下,Service中自動(dòng)注入的Mapper都會(huì)報(bào)紅,這次沒(méi)有報(bào)紅就知道會(huì)出錯(cuò),然后測(cè)試的時(shí)候果不其然報(bào)錯(cuò)了。

之所以沒(méi)有報(bào)紅是因?yàn)閟ervice類(lèi)沒(méi)有被識(shí)別,就是@Service沒(méi)有被掃描,所以應(yīng)該是掃描路徑出了問(wèn)題。

具體原因

在Springboot的啟動(dòng)類(lèi)上添加@ComponentScan

@SpringbootApplication是一個(gè)復(fù)合注解,它中包含了:@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan這三個(gè)注解。

@ComponentScan是組件掃描注解,它默認(rèn)掃描的是當(dāng)前包及以下用來(lái)掃描@Controller @Service @Repository這類(lèi)被標(biāo)記的類(lèi)。

錯(cuò)誤原因:

我的分布式項(xiàng)目中,路徑如下:

xxx.xxx.modle

xxx.xxx.mapper

xxx.xxx.service

xxx.xxx.web

啟動(dòng)類(lèi)在web目錄下,因此@ComponentScan默認(rèn)掃描路徑是xxx.xxx.web

因?yàn)閣eb與modle、mapper、service在同一級(jí)別下所以無(wú)法掃描到@Service注解。

解決方法

方法一

將啟動(dòng)類(lèi)移動(dòng)到上一級(jí)目錄。

方法二

自己定義掃描路徑,寫(xiě)法如下:

//注解寫(xiě)法:三種方法效果類(lèi)似,都是指定掃描路徑
@ComponentScan("xxx.xxx")
@ComponentScan(value = "xxx.xxx")
@ComponentScan(basePackages = "xxx.xxx")

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

相關(guān)文章

  • 詳解SpringMVC學(xué)習(xí)系列(6) 之 數(shù)據(jù)驗(yàn)證

    詳解SpringMVC學(xué)習(xí)系列(6) 之 數(shù)據(jù)驗(yàn)證

    這篇文章主要介紹了詳解SpringMVC學(xué)習(xí)系列(6) 之 數(shù)據(jù)驗(yàn)證 ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2016-12-12
  • 如何利用 Either 和 Option 進(jìn)行函數(shù)式錯(cuò)誤處理

    如何利用 Either 和 Option 進(jìn)行函數(shù)式錯(cuò)誤處理

    這篇文章主要介紹了如何利用 Either 和 Option 進(jìn)行函數(shù)式錯(cuò)誤處理。在 Java 中,錯(cuò)誤的處理在傳統(tǒng)上由異常以及創(chuàng)建和傳播異常的語(yǔ)言支持進(jìn)行。但是,如果不存在結(jié)構(gòu)化異常處理又如何呢?,需要的朋友可以參考下
    2019-06-06
  • java實(shí)現(xiàn)在pdf模板的指定位置插入圖片

    java實(shí)現(xiàn)在pdf模板的指定位置插入圖片

    這篇文章主要為大家詳細(xì)介紹了java如何實(shí)現(xiàn)在pdf模板的指定位置插入圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • Spring WebSocket 404錯(cuò)誤的解決方法

    Spring WebSocket 404錯(cuò)誤的解決方法

    這篇文章主要為大家詳細(xì)介紹了Spring WebSocket 404錯(cuò)誤的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • 關(guān)于Java中的dozer對(duì)象轉(zhuǎn)換問(wèn)題

    關(guān)于Java中的dozer對(duì)象轉(zhuǎn)換問(wèn)題

    Dozer是Java?Bean到Java?Bean映射器,它以遞歸方式將數(shù)據(jù)從一個(gè)對(duì)象復(fù)制到另一個(gè)對(duì)象,這篇文章主要介紹了Java中的dozer對(duì)象轉(zhuǎn)換的操作方法,需要的朋友可以參考下
    2022-08-08
  • 一篇文章帶你搞定JAVA反射

    一篇文章帶你搞定JAVA反射

    這篇文章主要介紹了Java反射機(jī)制的簡(jiǎn)單講解,本文講解了Java的高級(jí)概念反射機(jī)制,通過(guò)文字介紹案例該項(xiàng)概念和代碼的詳細(xì)展示,需要的朋友可以參考下
    2021-07-07
  • java使用反射創(chuàng)建并操作對(duì)象的方法

    java使用反射創(chuàng)建并操作對(duì)象的方法

    這篇文章主要介紹了java使用反射創(chuàng)建并操作對(duì)象的方法,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • Springboot日志配置的實(shí)現(xiàn)示例

    Springboot日志配置的實(shí)現(xiàn)示例

    本文主要介紹了Springboot日志配置的實(shí)現(xiàn)示例,使用slf4j和logback的方式記錄日志,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • 基于maven中多個(gè)子模塊的構(gòu)建順序

    基于maven中多個(gè)子模塊的構(gòu)建順序

    這篇文章主要介紹了maven中多個(gè)子模塊的構(gòu)建順序,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • springcloud 中 zuul 修改請(qǐng)求參數(shù)信息的方法

    springcloud 中 zuul 修改請(qǐng)求參數(shù)信息的方法

    這篇文章主要介紹了springcloud 中 zuul 修改請(qǐng)求參數(shù)信息的方法,需要的朋友可以參考下
    2018-02-02

最新評(píng)論

全椒县| 嘉善县| 庆云县| 华安县| 黎平县| 府谷县| 霞浦县| 鄂州市| 上犹县| 白山市| 揭西县| 宜城市| 海原县| 永善县| 沙田区| 双峰县| 温泉县| 钦州市| 兰考县| 盐池县| 成武县| 朝阳市| 胶州市| 朝阳区| 大冶市| 泸定县| 屏山县| 泽州县| 淮南市| 蓝田县| 新余市| 仲巴县| 永善县| 达日县| 文山县| 宁南县| 长寿区| 禹州市| 南皮县| 城步| 西丰县|