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

關(guān)于@ComponentScan注解的用法及作用說(shuō)明

 更新時(shí)間:2023年09月22日 09:41:47   作者:葉楓^_^  
這篇文章主要介紹了關(guān)于@ComponentScan注解的用法及作用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

@ComponentScan的作用

@ComponentScan(param)

告訴Spring 哪個(gè)packages 的用注解標(biāo)識(shí)的類 會(huì)被spring自動(dòng)掃描并且裝入bean容器,param即用來(lái)指定掃描包的范圍。

此注解一般和@Configuration注解一起使用

指定Spring掃描注解的package。

如果沒有指定包,那么默認(rèn)會(huì)掃描此配置類所在的package。

注:

@Configuration注解申明當(dāng)前類是一個(gè)配置類,相當(dāng)于xml配置文件。

@ComponentScan和@Configuration一起使用的原因就是基于Spring2.0中的注解配合xml配置文件的實(shí)現(xiàn)一樣,即在xml配置文件配置ComponentScan包掃描屬性。

例如:

如果類中用了@Controller,@Repository,@Service,@Component四大注解標(biāo)識(shí)之一了,那么如果不加上@ComponentScan,Spring就不會(huì)自動(dòng)掃描類上的四大注解中的任何一個(gè),那么四大注解下的類就不會(huì)被Spring掃描到,更不會(huì)裝入Spring容器中,因此你配置的四大注解就失去了作用。

@ComponentScan注解在使用時(shí)的一些誤解與分析

1.心血來(lái)潮寫了幾行代碼,但是卻出現(xiàn)了一個(gè)spring框架的問(wèn)題,是關(guān)于spring中自動(dòng)注入的問(wèn)題。

2.我當(dāng)時(shí)找了好久都沒有找到,后來(lái)發(fā)現(xiàn)了問(wèn)題。

3.我的代碼結(jié)構(gòu)是SpringBoot多模塊結(jié)構(gòu)。

4.我有兩個(gè)模塊:mall_admin,mall_common,我的mall_admin和mall_common兩個(gè)模塊共同隸屬于mall_parent父模塊。

5.我的mall_admin模塊里面聲明了mall_common依賴,同時(shí)mall_admin模塊里面寫了運(yùn)行類,mall_common為通用模塊,一般用作調(diào)用使用。

6.我的mall_admin的包結(jié)構(gòu)為cn.xhc.mall.mall_admin.*(*可以為controller,service,service.impl,config,dao等),同時(shí)我的運(yùn)行類是在cn.xhc.mall.mall_admin包里面。

7.我的mall_common的包結(jié)構(gòu)為cn.xhc.mall.mall_common.*(*可以為config,utils,service,service.impl等)。

8.我在mall_admin里面的service層自動(dòng)注入mall_common里面的service層的類,但是卻報(bào)注入失敗的錯(cuò)誤。

9.我起初找了很久,并且還在啟動(dòng)類上加上了@ComponentScan注解,并標(biāo)記上了包名,但是還是找不到自動(dòng)注入失敗的錯(cuò)誤。

10.我一直以為是我的mall_common模塊里面service層的代碼寫錯(cuò)誤,所以才導(dǎo)致自動(dòng)注入不成功。

11.但是我找了好久,沒有發(fā)現(xiàn)錯(cuò)誤的地方,這令我十分郁悶,我嘗試了許多方法,甚至嘗試使用@Import注解,但是還是沒有成功。

最后我終于發(fā)現(xiàn)了原因,其實(shí)我使用@ComponentScan注解并沒有什么問(wèn)題,但是我的啟動(dòng)類放在了錯(cuò)誤的包下面,最開始我將我的啟動(dòng)類放在了cn.xhc.mall.mall_admin下面,但是mall_common中的service放在了cn.xhc.mall.mall_common.service包中,所以我掃描不到mall_common中的@Service注解,因?yàn)樽詣?dòng)掃描只會(huì)掃描啟動(dòng)類同級(jí)或者啟動(dòng)類下面的包中的spring注解,所以只能掃描到cn.xhc.mall.mall_admin同級(jí)或者下面的包中的spring注解,而我的mall_common中service是在cn.xhc.mall.mall_common中,所以掃描不到,不能注冊(cè)為spring中的bean對(duì)象,所以不能再mall_admin中的service中自動(dòng)注入mall_common中的service。

最后我將啟動(dòng)類放在cn.xhc.mall包下,并加上@ComponentScan注解,成功解決問(wèn)題。

總結(jié)

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

相關(guān)文章

  • Java語(yǔ)言中的內(nèi)存泄露代碼詳解

    Java語(yǔ)言中的內(nèi)存泄露代碼詳解

    這篇文章主要介紹了Java語(yǔ)言中的內(nèi)存泄露代碼詳解,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • Spring框架概述及核心設(shè)計(jì)思想分享

    Spring框架概述及核心設(shè)計(jì)思想分享

    Spring框架是一種開源的Java企業(yè)級(jí)應(yīng)用開發(fā)框架,提供了IoC(控制反轉(zhuǎn))容器和DI(依賴注入)等核心設(shè)計(jì)思想,SpringBoot則是在Spring基礎(chǔ)上進(jìn)一步簡(jiǎn)化配置,提供了快速開發(fā)、內(nèi)置服務(wù)器等功能,學(xué)習(xí)Spring框架需要掌握容器、IoC和DI等概念,以及分層設(shè)計(jì)等軟件工程思想
    2025-02-02
  • java實(shí)現(xiàn)連連看游戲

    java實(shí)現(xiàn)連連看游戲

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)連連看游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Fluent Mybatis實(shí)現(xiàn)環(huán)境隔離和租戶隔離

    Fluent Mybatis實(shí)現(xiàn)環(huán)境隔離和租戶隔離

    我們?cè)趯?shí)際的業(yè)務(wù)開發(fā)中,經(jīng)常會(huì)碰到環(huán)境邏輯隔離和租戶數(shù)據(jù)邏輯隔離的問(wèn)題。本文就詳細(xì)的來(lái)介紹一下,感興趣的小伙伴們可以參考一下
    2021-08-08
  • 解決@FeignClient注入service失敗問(wèn)題

    解決@FeignClient注入service失敗問(wèn)題

    這篇文章主要介紹了解決@FeignClient注入service失敗問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 快速掌握J(rèn)ava8中的Optional

    快速掌握J(rèn)ava8中的Optional

    Optional 是一個(gè)容器類,代表一個(gè)值存在或不存在,Optional并不是用來(lái)替換所有的null,而是為了在設(shè)計(jì)良好的API中更明確地表達(dá)可能缺失的值,這篇文章主要介紹了Java8的Optional及使用,需要的朋友可以參考下
    2023-07-07
  • CodeGPT + IDEA + DeepSeek如何在IDEA中引入DeepSeek實(shí)現(xiàn)AI智能開發(fā)

    CodeGPT + IDEA + DeepSeek如何在IDEA中引入DeepS

    文章介紹了如何在IDEA中使用CodeGPT和DeepSeek插件實(shí)現(xiàn)AI智能開發(fā),具體內(nèi)容包括安裝步驟、配置APIkey和參數(shù)設(shè)置等,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-02-02
  • 解決java Graphics drawImage 無(wú)法顯示圖片的問(wèn)題

    解決java Graphics drawImage 無(wú)法顯示圖片的問(wèn)題

    這篇文章主要介紹了解決java Graphics drawImage 無(wú)法顯示圖片的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java聊天室之實(shí)現(xiàn)運(yùn)行服務(wù)器與等待客戶端連接

    Java聊天室之實(shí)現(xiàn)運(yùn)行服務(wù)器與等待客戶端連接

    這篇文章主要為大家詳細(xì)介紹了Java簡(jiǎn)易聊天室之實(shí)現(xiàn)運(yùn)行服務(wù)器程序與等待客戶端程序連接功能,文中的示例代碼講解詳細(xì),需要的可以了解一下
    2022-10-10
  • SpringBoot+MyBatisPlus+MySQL8實(shí)現(xiàn)樹形結(jié)構(gòu)查詢

    SpringBoot+MyBatisPlus+MySQL8實(shí)現(xiàn)樹形結(jié)構(gòu)查詢

    這篇文章主要為大家詳細(xì)介紹了SpringBoot+MyBatisPlus+MySQL8實(shí)現(xiàn)樹形結(jié)構(gòu)查詢,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06

最新評(píng)論