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

Spring配置文件的超詳細(xì)圖文介紹

 更新時間:2023年06月05日 14:40:13   作者:白胡子永遠(yuǎn)  
Spring配置文件是一個或多個標(biāo)準(zhǔn)的XML文檔,下面這篇文章主要給大家介紹了關(guān)于Spring配置文件的超詳細(xì)圖文介紹,文中通過圖文以及實例代碼介紹的非常詳細(xì),需要的朋友可以參考下

1. Spring的配置文件的命名

答:Spring的配置文件是放在resources文件夾下面的,一般我們都會給他起一個默認(rèn)的名字:applicationContext.xml。如下圖所示:

2. Spring配置文件中有什么

上面的圖是最基本的Spring的配置文件的內(nèi)容。下面將詳細(xì)介紹這個配置文件中的每一個標(biāo)簽的使用方法。

  1. 在這個applicatinContext.xml文件中,通常最上面的是一串網(wǎng)址,這串網(wǎng)址會被起一個別名,這個別名就是一種約束信息。當(dāng)你運行這個文件的時候,他會自己去這個地址的地方調(diào)用已經(jīng)寫好的東西,并且遵守這個寫好的規(guī)則。
  2. <bean>標(biāo)簽的詳細(xì)解讀
<bean id=""  class="">
    <property name="" value=""/>  <!--這是set注入-->
</bean>
  • <bean>標(biāo)簽是用來創(chuàng)建對象的,跟我們最初學(xué)習(xí)的new一個對象是一樣的效果。
  • <bean>標(biāo)簽中的id表示的是將來你創(chuàng)建的對象的名字,是唯一的。
  • class:表示的是你創(chuàng)建的這個對象的類是什么類型的,需要我們寫這個類的全名稱限定,(這個全名稱限定是從java包下開始寫這個類所在的包路徑)。此外:我們這里的類,一定不能是接口,因為接口本來不能new對象
  • 若是<bean></bean>標(biāo)簽對之間沒有任何內(nèi)容,那么可以將<bean></bean>簡寫為<bean/>。

3. set注入

<bean id="" class="">
    <property name="" value="" />
</bean>

set注入是說,我們在創(chuàng)建這個bean對象的時候,給這個創(chuàng)建的對象的屬性賦值使用的是set方法。

所以說,我們使用set注入的方法創(chuàng)建對象的時候,必須要保證該類已經(jīng)有set方法的存在。

set注入中的property標(biāo)簽的name屬性:必須跟該類的屬性名保持一模一樣,因為Spring是會根據(jù)這個name的名字,去找對應(yīng)的setName的set方法。

set注入中的property標(biāo)簽的value屬性:表示的是給該對象的屬性賦值,value的值就是該對象的屬性的值,但這里要注意,value屬性僅僅只能給簡單類型的屬性賦值,(簡單類型即:八大基本類型和基本類型的包裝類)。

那么如何跟引用類型的屬性復(fù)制呢?

這時,我們就要使用ref屬性,ref屬性也是property標(biāo)簽的一個屬性,ref屬性是用來給引用類型的屬性賦值的,ref屬性跟value屬性的功能是一樣的,但是value屬性是給基本類型屬性賦值,ref屬性是給引用類型的屬性賦值。

ref屬性的值是該引用類型的id值。

補充:當(dāng)一個類在使用set注入屬性值的時候,只寫了set方法,卻沒有寫該屬性,那么使用了set注入,是不會報錯的,因為根據(jù)Spring的設(shè)計規(guī)則,Spring只會判斷該set方法是否存在,若是該方法存在,那么就不會報錯。

4. 構(gòu)造注入

<bean id="" class="">
    <constructor-arg name="" value="" />
</bean>

構(gòu)造注入使用的是,創(chuàng)建對象的類的有參構(gòu)造方法,因此使用構(gòu)造注入的時候,要保證構(gòu)造方法的存在。

構(gòu)造注入中的constructor-arg標(biāo)簽中的name屬性,必須跟構(gòu)造方法里面參數(shù)的名字一摸一樣,

構(gòu)造注入中的constructor-arg標(biāo)簽中的value屬性,也是用來跟基本類型的屬性賦值的。若是給引用類型的屬性賦值,那么必須使用ref屬性。ref的值是這個屬性所在類的id的值。

補充:構(gòu)造注入中的constructor-arg標(biāo)簽中的name屬性,可以使用index來代替,index的值為0,1,2.表示的是給構(gòu)造方法中的第幾個參數(shù)賦值。例如

<bean id="" class=""> <constructor-arg index="0" value="" /><!--給構(gòu)造方法的第一個參數(shù)賦值--> <constructor-arg index="2" value="" /><!--給構(gòu)造方法的第三個參數(shù)賦值--> <constructor-arg index="1" value="" /><!--給構(gòu)造方法的第二個參數(shù)賦值--></bean><bean id="" class="">
    <constructor-arg index="0" value="" /><!--給構(gòu)造方法的第一個參數(shù)賦值-->
    <constructor-arg index="2" value="" /><!--給構(gòu)造方法的第三個參數(shù)賦值-->
    <constructor-arg index="1" value="" /><!--給構(gòu)造方法的第二個參數(shù)賦值-->
</bean>

以上代碼說明,使用index的屬性給構(gòu)造注入的屬性賦值的時候,不是必須按照0,1,2的順序賦值,可以打亂順序,使用0,2,1的下標(biāo)也是可以的。

若是我們嚴(yán)格按照0,1,2的下標(biāo)來給構(gòu)造注入的屬性賦值,那么我們還可以簡寫成下面的樣式:

<bean id="" class="">
    <constructor-arg  value="" /><!--給構(gòu)造方法的第一個參數(shù)賦值-->
    <constructor-arg  value="" /><!--給構(gòu)造方法的第二個參數(shù)賦值-->
    <constructor-arg  value="" /><!--給構(gòu)造方法的第三個參數(shù)賦值-->
</bean>

即上面的代碼省略了index屬性,但這樣的方式要求,你必須按照構(gòu)造方法中的參數(shù)的順序去給屬性賦值。

構(gòu)造注入強大的地方:我們使用構(gòu)造注入的方式給屬性賦值的時候,我們可以直接使用Java中內(nèi)置的寫好的類。舉個例子,如下圖所示:

上面的圖中的name是File類的屬性,value是我們想給自己定義的File類的對象myFile賦的值。

總結(jié)

到此這篇關(guān)于Spring配置文件的超詳細(xì)介紹的文章就介紹到這了,更多相關(guān)Spring配置文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一文帶你了解如何正確使用MyBatisPlus

    一文帶你了解如何正確使用MyBatisPlus

    在本篇文章中,我們獎通過?MyBatis?Plus?來對一張表進(jìn)行?CRUD?操作,來看看是如何簡化我們開發(fā)的。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-12-12
  • 詳解Spring @Autowired 注入小技巧

    詳解Spring @Autowired 注入小技巧

    這篇文章主要介紹了詳解Spring @Autowired 注入小技巧,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • 用Java設(shè)計模式中的觀察者模式開發(fā)微信公眾號的例子

    用Java設(shè)計模式中的觀察者模式開發(fā)微信公眾號的例子

    這篇文章主要介紹了用Java設(shè)計模式中的觀察者模式開發(fā)微信公眾號的例子,這里Java的微信SDK等部分便不再詳述,只注重關(guān)鍵部分和開發(fā)過程中觀察者模式優(yōu)點的體現(xiàn),需要的朋友可以參考下
    2016-02-02
  • Java實現(xiàn)拓?fù)渑判虻氖纠a

    Java實現(xiàn)拓?fù)渑判虻氖纠a

    這篇文章我們要講的是拓?fù)渑判颍@是一個針對有向無環(huán)圖的算法,主要是為了解決前驅(qū)后繼的關(guān)系,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-05-05
  • 深入理解 Java 中的 Switch 語句示例詳解

    深入理解 Java 中的 Switch 語句示例詳解

    在Java編程中,switch語句通過表達(dá)式值來執(zhí)行不同代碼塊,本文介紹switch語法、案例、注意事項,以及與if語句的對比,包括基本語法、關(guān)鍵字、表達(dá)式、case常量、break和default的使用,以及如何根據(jù)輸入的字符輸出星期、大小寫轉(zhuǎn)換、成績判斷和季節(jié)判斷等實際應(yīng)用場景
    2024-10-10
  • Java設(shè)計模式之中介者模式的實現(xiàn)方式

    Java設(shè)計模式之中介者模式的實現(xiàn)方式

    Java中介者模式是一種行為型設(shè)計模式,它通過一個中介者對象來協(xié)調(diào)多個對象之間的交互,降低對象之間的耦合度,提高系統(tǒng)的可維護(hù)性和可擴展性。本文將介紹該設(shè)計模式的原理、使用場景和實現(xiàn)方法
    2023-04-04
  • 詳解Java中的OkHttp?JSONP爬蟲

    詳解Java中的OkHttp?JSONP爬蟲

    一般在java平臺上,我們會使用apache?httpclient作為http客戶端,用于發(fā)送?http?請求,并對響應(yīng)進(jìn)行處理,這篇文章主要介紹了詳解Java中的OkHttp?JSONP爬蟲的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • 解決Eclipse打開.java文件異常,提示用系統(tǒng)工具打開的問題

    解決Eclipse打開.java文件異常,提示用系統(tǒng)工具打開的問題

    這篇文章主要介紹了解決Eclipse打開.java文件異常,提示用系統(tǒng)工具打開的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • Java String字符串內(nèi)容實現(xiàn)添加雙引號

    Java String字符串內(nèi)容實現(xiàn)添加雙引號

    這篇文章主要介紹了Java String字符串內(nèi)容實現(xiàn)添加雙引號,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • Java實現(xiàn)跳躍表(skiplist)的簡單實例

    Java實現(xiàn)跳躍表(skiplist)的簡單實例

    這篇文章主要介紹了Java編程中跳躍表的概念和實現(xiàn)原理,并簡要敘述了它的結(jié)構(gòu),具有一定參考價值,需要的朋友可以了解下。
    2017-09-09

最新評論