簡單了解Spring Bean常用注解的裝配
這篇文章主要介紹了簡單了解Spring Bean常用注解的裝配,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
基于注解的裝配
在Spring框架中,盡管使用XML配置文件可以很簡單地裝配Bean,但如果應(yīng)用中有大量的Bean需要裝配,會導致XML配置文件過于龐大,不方便以后的升級與維護,因此更多的時候推薦開發(fā)者使用注解(annotation)的方式去裝配Bean。
在Spring框架中定義了一系列的注解,下面介紹集中常用的注解。
@Component
該注解是一個泛化的概念,僅僅表示一個組件對象(Bean),可以作用在任何層次上。
@Repository
該注解用于將數(shù)據(jù)訪問層(DAO)的類標識為Bean,即注解數(shù)據(jù)訪問層Bean,其功能與@Component相同。
@Service
該注解用于標注一個業(yè)務(wù)邏輯組件類(Service層),其功能與@Component相同。
@Controller
該注解用于標注一個控制器組件類(Spring MVC的Controller),其功能與@Component相同。
@Autowired
該注解可以對類成員變量、方法及構(gòu)造方法進行標注,完成自動裝配的工作。通過使用@Autowired來消除setter和getter方法。默認按照Bean的類型進行裝配。
@Resource
該注解與@Autowired的功能一樣,區(qū)別在于該注解默認是按照名稱來裝配注入的,只有當找不到與名稱匹配的Bean時才會按照類型來裝配注入;而@Autowired默認按照Bean的類型進行裝配,如果想按照名稱來裝配注入,則需要和@Qualifier注解一起使用。
@Qualifier
該注解與@Aitowired注解配合使用。當@Autowired注解需要按照名稱來裝配注入時需要和該注解一起使用,Bean的實例名稱由@Qualifier注解的參數(shù)制定。
在上面幾個注解中,雖然@Repository、@Service和@Controller等注解的功能與@Component注解相同,但為了使類的標注更加清晰(層次化),在實際開發(fā)中推薦使用@Repository標注數(shù)據(jù)訪問層(DAO層)、使用@Service標注業(yè)務(wù)邏輯層(Service層)、使用@Controller標注控制器層(控制層)。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java?11新特性HttpClient主要組件及發(fā)送請求示例詳解
這篇文章主要為大家介紹了java?11新特性HttpClient主要組件及發(fā)送請求示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06
詳解java中的PropertyChangeSupport與PropertyChangeListener
這篇文章主要介紹了詳解java中的PropertyChangeSupport與PropertyChangeListener的相關(guān)資料,需要的朋友可以參考下2017-09-09
Java多線程編程之CountDownLatch同步工具使用實例
這篇文章主要介紹了Java多線程編程之CountDownLatch同步工具使用實例,需要的朋友可以參考下2015-05-05
一文告訴你為什么要重寫hashCode()方法和equals()方法
本篇文章帶大家了解一下為什么重寫hashCode()方法和equals()方法,文中有非常詳細的說明以及代碼示例,對正在學習java的小伙伴們很有幫助,需要的朋友可以參考下2021-05-05
Java數(shù)據(jù)結(jié)構(gòu)之單鏈表的實現(xiàn)與面試題匯總
由于順序表的插入刪除操作需要移動大量的元素,影響了運行效率,因此引入了線性表的鏈式存儲——單鏈表。本文為大家介紹了單鏈表的實現(xiàn)與面試題匯總,感興趣的可以了解一下2022-10-10

