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

Spring自動裝配Bean實現(xiàn)過程詳解

 更新時間:2020年02月22日 10:50:16   作者:流氓大隊長  
這篇文章主要介紹了Spring自動裝配Bean實現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

這篇文章主要介紹了Spring自動裝配Bean實現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

要使用自動裝配,就需要配置 <bean> 元素的 autowire 屬性。autowire 屬性有五個值,具體說明如表 1 所示。
表 1 autowire 的屬性和作用

 

名稱 說明
byName 根據(jù) Property 的 name 自動裝配,如果一個 Bean 的 name 和另一個 Bean 中的 Property 的 name 相同,則自動裝配這個 Bean 到 Property 中。
byType 根據(jù) Property 的數(shù)據(jù)類型(Type)自動裝配,如果一個 Bean 的數(shù)據(jù)類型兼容另一個 Bean 中 Property 的數(shù)據(jù)類型,則自動裝配。
constructor 根據(jù)構造方法的參數(shù)的數(shù)據(jù)類型,進行 byType 模式的自動裝配。
autodetect 如果發(fā)現(xiàn)默認的構造方法,則用 constructor 模式,否則用 byType 模式。
no 默認情況下,不使用自動裝配,Bean 依賴必須通過 ref 元素定義。

下面通過案例演示如何實現(xiàn)自動裝配。首先將 applicationContext.xml 配置文件修改成自動裝配形式,如下所示。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:p="http://www.springframework.org/schema/p" 
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation=" 
http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 
http://www.springframework.org/schema/aop 
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd 
http://www.springframework.org/schema/tx 
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<bean id="personDao" class="com.mengma.annotation.PersonDaoImpl" />
<bean id="personService" class="com.mengma.annotation.PersonServiceImpl"
autowire="byName" />
<bean id="personAction" class="com.mengma.annotation.PersonAction"
autowire="byName" />
</beans>

在上述配置文件中,用于配置 personService 和 personAction 的 <bean> 元素中除了 id 和 class 屬性以外,還增加了 autowire 屬性,并將其屬性值設置為 byName(按屬性名稱自動裝配)。

默認情況下,配置文件中需要通過 ref 裝配 Bean,但設置了 autowire="byName",Spring 會在配置文件中自動尋找與屬性名字 personDao 相同的 <bean>,找到后,通過調(diào)用 setPersonDao(PersonDao personDao)方法將 id 為 personDao 的 Bean 注入 id 為 personService 的 Bean 中,這時就不需要通過 ref 裝配了。

使用 JUnit 再次運行測試類中的 test() 方法,控制臺的顯示結果如圖所示。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • java 中設計模式(值對象)的實例詳解

    java 中設計模式(值對象)的實例詳解

    這篇文章主要介紹了java 中設計模式(值對象)的實例詳解的相關資料,希望通過本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • Java中對null進行強制類型轉換的方法

    Java中對null進行強制類型轉換的方法

    小編對null進行強轉會不會拋錯,非常的好奇,下面小編通過實例代碼給大家介紹Java中對null進行強制類型轉換的方法,感興趣的朋友參考下吧
    2018-09-09
  • IDEA檢查項目的jdk版本需要看的地方

    IDEA檢查項目的jdk版本需要看的地方

    這篇文章主要介紹了IDEA檢查項目的jdk版本需要看的地方,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-06-06
  • Java面試之如何實現(xiàn)10億數(shù)據(jù)判重

    Java面試之如何實現(xiàn)10億數(shù)據(jù)判重

    當數(shù)據(jù)量比較大時,使用常規(guī)的方式來判重就不行了,所以這篇文章小編主要來和大家介紹一下Java實現(xiàn)10億數(shù)據(jù)判重的相關方法,希望對大家有所幫助
    2024-02-02
  • Java靜態(tài)方法不能調(diào)用非靜態(tài)成員的原因分析

    Java靜態(tài)方法不能調(diào)用非靜態(tài)成員的原因分析

    在Java中,靜態(tài)方法是屬于類的方法,而不是屬于對象的方法,它可以通過類名直接調(diào)用,無需創(chuàng)建對象實例,非靜態(tài)成員指的是類的實例變量和實例方法,它們需要通過對象實例才能訪問和調(diào)用,本文小編將和大家一起探討Java靜態(tài)方法為什么不能調(diào)用非靜態(tài)成員
    2023-10-10
  • 一文搞懂Java常見的三種代理模式(靜態(tài)代理、動態(tài)代理和cglib代理)

    一文搞懂Java常見的三種代理模式(靜態(tài)代理、動態(tài)代理和cglib代理)

    Java中常見的三種代理模式是靜態(tài)代理模式、動態(tài)代理模式和CGLIB代理模式,本文就來給大家詳細的講解一下這三種代理模式,感興趣的小伙伴跟著小編一起來看看吧
    2023-08-08
  • 編程語言榜單Java與Python并列第二!Julia下滑

    編程語言榜單Java與Python并列第二!Julia下滑

    日新月異的技術圈,隨著云、大數(shù)據(jù)、人工智能等主流技術的廣泛應用,作為開發(fā)利器的編程語言的最新發(fā)展趨勢也在無形中發(fā)生了變化,本文主要介紹了java、Python、Julia等語言在Resmonk榜單的排名
    2021-08-08
  • 解決Hibernate4執(zhí)行save()或update()無效問題的方法

    解決Hibernate4執(zhí)行save()或update()無效問題的方法

    這篇文章主要為大家詳細介紹了解決Hibernate4執(zhí)行save()或update()無效問題的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-06-06
  • 輕松掌握Java享元模式

    輕松掌握Java享元模式

    這篇文章主要幫助大家輕松掌握Java享元模式,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Spring Boot如何獲取maven打包時間

    Spring Boot如何獲取maven打包時間

    這篇文章主要介紹了Spring Boot如何獲取maven打包時間,首先引入maven打包插件,本文分步驟給大家介紹的非常詳細,需要的朋友參考下吧
    2024-03-03

最新評論

通榆县| 监利县| 锦屏县| 阳谷县| 荆门市| 柘荣县| 伽师县| 高要市| 长丰县| 桂林市| 江油市| 金山区| 阳西县| 二连浩特市| 白河县| 无锡市| 兴文县| 理塘县| 比如县| 河北区| 诸暨市| 咸宁市| 焉耆| 洪湖市| 汉中市| 青浦区| 保康县| 改则县| 安岳县| 公安县| 大冶市| 连州市| 安吉县| 吉水县| 颍上县| 河北省| 资阳市| 灌云县| 安西县| 佳木斯市| 六安市|