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

Spring注解中@Autowired和@Bean的區(qū)別詳解

 更新時間:2023年06月16日 09:48:06   作者:南猿北轍  
這篇文章主要詳細介紹了Spring注解中@Autowired和@Bean二者有什么區(qū)別,文中通過兩個注解的使用場景介紹了二者的區(qū)別,感興趣的同學(xué)可以參考閱讀

先了解下這兩個注解各自的使用場景,咱就知道兩者的區(qū)別了。

1,@Autowired

@Autowired 注釋,它可以對類成員變量、方法及構(gòu)造函數(shù)進行標注,完成自動裝配的工作。 通過 @Autowired的使用來消除 set ,get方法。在此之前,我們對bean配置屬性時,是這么用的

<property name="屬性名" value=" 屬性值"/>   

通過這種方式來,配置比較繁瑣,而且代碼比較多。在Spring 2.5 引入了 @Autowired 注釋

使用@Autowired的原理:

其實在啟動spring IOC時,容器自動裝載了一個AutowiredAnnotationBeanPostProcessor后置處理器,當容器掃描到@Autowied、@Resource(是CommonAnnotationBeanPostProcessor后置處理器處理的)或@Inject時,就會在IoC容器自動查找需要的bean,并裝配給該對象的屬性

2,@Bean

@Bean是一個方法級別上的注解,主要用在@Configuration注解的類里,也可以用在@Component注解(@Controller,@Service,@Repository)的類里。添加的bean的id為方法名@Bean注解是Spring從3.0版本開始引入的

spring的@Bean注解用于告訴方法,產(chǎn)生一個Bean對象,然后這個Bean對象交給Spring管理。產(chǎn)生這個Bean對象的方法Spring只會調(diào)用一次,隨后這個Spring將會將這個Bean對象放在自己的IOC容器中。

實例:

@Configuration
public class AppConfig {
   @Bean
   public UserService userService() {
        return new UserServiceImpl();
   }
}

等同于以下XML配置:

<beans>
        <bean id="userService" class="com.acme.UserServiceImpl"/>
</beans>

兩者區(qū)別

@Autowired 可修飾變量和方法,用于完成自動裝配(將需要的外部資源注入),自動裝配的前提你要先有才能裝配(該資源需要存在于IOC容器中),直接引用資源就行。

@Bean 修飾的方法表示初始化一個對象并交由Spring IOC去管理,@Bean 只能和@Component @Repository @Controller @Service @Configration 配合使用。

到此這篇關(guān)于Spring注解中@Autowired和@Bean的區(qū)別詳解的文章就介紹到這了,更多相關(guān)@Autowired和@Bean的區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot項目打包成war包并部署在tomcat上運行的操作步驟

    SpringBoot項目打包成war包并部署在tomcat上運行的操作步驟

    我們開發(fā) SpringBoot 項目有時我們會需要打包成 war 包,放入外置的 Tomcat 中進行運行,或者使用工具idea直接啟動,便于開發(fā)調(diào)試,本文給大家分享SpringBoot項目打包成war包并部署在tomcat上運行的操作步驟,感興趣的朋友一起看看吧
    2024-03-03
  • spring boot配置ssl實現(xiàn)HTTPS的方法

    spring boot配置ssl實現(xiàn)HTTPS的方法

    這篇文章主要介紹了spring boot配置ssl實現(xiàn)HTTPS的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-03-03
  • JDK動態(tài)代理提高代碼可維護性和復(fù)用性利器

    JDK動態(tài)代理提高代碼可維護性和復(fù)用性利器

    這篇文章主要為大家介紹了JDK動態(tài)代理提高代碼可維護性和復(fù)用性利器,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • java 優(yōu)雅關(guān)閉線程池的方案

    java 優(yōu)雅關(guān)閉線程池的方案

    這篇文章主要介紹了java 優(yōu)雅關(guān)閉線程池的方案,幫助大家更好的理解和學(xué)習(xí)Java,感興趣的朋友可以了解下
    2020-11-11
  • 基于Java中對域和靜態(tài)方法的訪問不具有多態(tài)性(實例講解)

    基于Java中對域和靜態(tài)方法的訪問不具有多態(tài)性(實例講解)

    下面小編就為大家?guī)硪黄贘ava中對域和靜態(tài)方法的訪問不具有多態(tài)性(實例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 基于module-info.class的問題

    基于module-info.class的問題

    這篇文章主要介紹了基于module-info.class的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Java面試題沖刺第三十天--數(shù)據(jù)庫(6)

    Java面試題沖刺第三十天--數(shù)據(jù)庫(6)

    這篇文章主要為大家分享了最有價值的三道關(guān)于數(shù)據(jù)庫的面試題,涵蓋內(nèi)容全面,包括數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的題目、經(jīng)典面試編程題等,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Java高效映射工具MapStruct的使用示例

    Java高效映射工具MapStruct的使用示例

    MapStruct 是一個 Java 注解處理器,用于在不同 Java Beans 或數(shù)據(jù)傳輸對象(DTOs)之間自動生成類型安全的映射代碼,這是一個編譯時映射框架,意味著它利用注解在編譯時生成代碼,本文將給大家介紹一下Java注解處理器MapStruct的使用示例,需要的朋友可以參考下
    2023-12-12
  • SpringBoot中對SpringMVC的自動配置詳解

    SpringBoot中對SpringMVC的自動配置詳解

    這篇文章主要介紹了SpringBoot中的SpringMVC自動配置詳解,Spring MVC自動配置是Spring Boot提供的一種特性,它可以自動配置Spring MVC的相關(guān)組件,簡化了開發(fā)人員的配置工作,需要的朋友可以參考下
    2023-10-10
  • 深入理解Java設(shè)計模式之狀態(tài)模式

    深入理解Java設(shè)計模式之狀態(tài)模式

    這篇文章主要介紹了JAVA設(shè)計模式之職責(zé)鏈模式的的相關(guān)資料,文中示例代碼非常詳細,供大家參考和學(xué)習(xí),感興趣的朋友可以了解
    2021-11-11

最新評論

太仆寺旗| 奉贤区| 秦皇岛市| 类乌齐县| 灵川县| 黔东| 富阳市| 大埔区| 蓝田县| 漠河县| 鄂伦春自治旗| 万载县| 茌平县| 吉首市| 罗平县| 双流县| 尤溪县| 凤城市| 商南县| 温宿县| 吴忠市| 西华县| 孟津县| 景德镇市| 绥化市| 泽库县| 体育| 澜沧| 清丰县| 汝城县| 卓资县| 会宁县| 镇雄县| 义乌市| 萨嘎县| 柳江县| 安乡县| 嘉义县| 广水市| 托克托县| 滨州市|