Spring 整合多個(gè)配置文件的方法
對(duì)于一個(gè)大型應(yīng)用來講,可能存在多個(gè)配置文件。我們可以在啟動(dòng) Spring 容器時(shí),通過 String 數(shù)組來指定這些配置文件 。
Spring 還可以通過 <import> 將多個(gè)配置文件引入到一個(gè)文件中,集成這些配置文件,這樣在啟動(dòng) Spring 容器時(shí),僅需要指定這個(gè)主配置文件即可 。 比如以下的這個(gè)主配置文件:
<import resource="classpath:beans2.xml"/> <bean id="author" class="net.deniro.spring4.bean.Author"/>
假設(shè) beans2.xml 里面已經(jīng)配置了 Book 類,那么 Spring 容器通過這個(gè)主配置文件即可加載這兩個(gè) Bean 信息咯 O(∩_∩)O哈哈~
如果一個(gè)配置文件 a.xml 引用了 b.xml 中的 bean , 并不一定需要通過 import 引入 b.xml , 只需要保證在啟動(dòng) Spring 容器時(shí), a.xml 和 b.xml 都在配置文件列表中即可 。
這兩種配置方式的區(qū)別在于,如果在 a.xml 中采用 import 引入了 b.xml ,相當(dāng)于 a.xml 一個(gè)文件就包含了這兩個(gè)配置文件的所有信息, 因此 Spring 容器只需要加載 a.xml 文件即可;否則就需要在 Spring 啟動(dòng)時(shí),同時(shí)加載兩個(gè)配置文件,以便在內(nèi)存中對(duì)兩個(gè)配置文件進(jìn)行合并 。
我們可以通過 <import> 來引入多個(gè)外部配置文件,resource 屬性支持 Spring 的標(biāo)準(zhǔn)資源路徑。
大型應(yīng)用為了防止開發(fā)時(shí)發(fā)生配置文件資源競(jìng)爭(zhēng)現(xiàn)象,或者為了使模塊便于拆分,往往每個(gè)模塊都擁有直接獨(dú)立的配置文件。我們可以在應(yīng)用層面提供一個(gè)可整合的配置文件,通過 <import> 將各個(gè)模塊整合起來 。 這樣,在啟動(dòng)容器時(shí),只需要加載這個(gè)整合后的配置文件就可以啦
總結(jié)
以上所述是小編給大家介紹的Spring 整合多個(gè)配置文件的方法,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
springboot獲取真實(shí)ip地址的方法實(shí)例
在使用springboot時(shí),需要獲取訪問客戶端的IP地址,所以下面這篇文章主要給大家介紹了關(guān)于springboot獲取真實(shí)ip地址的相關(guān)資料,需要的朋友可以參考下2022-06-06Java8?lambda表達(dá)式的10個(gè)實(shí)例講解
這篇文章主要介紹了Java8?lambda表達(dá)式的10個(gè)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03Slf4j+logback實(shí)現(xiàn)JSON格式日志輸出方式
這篇文章主要介紹了Slf4j+logback實(shí)現(xiàn)JSON格式日志輸出方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12完全解析Java編程中finally語句的執(zhí)行原理
這篇文章主要深度介紹了Java編程中finally語句的執(zhí)行原理,細(xì)致講解了finally在異常處理中的流程控制作用,需要的朋友可以參考下2015-11-11Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(31)
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧,希望可以幫到你2021-07-07使用Spring MVC攔截器實(shí)現(xiàn)日志記錄的方法
本篇文章主要介紹了使用Spring MVC攔截器實(shí)現(xiàn)日志記錄的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-04-04Java中的ConcurrentLinkedQueue松散隊(duì)列解析
這篇文章主要介紹了Java中的ConcurrentLinkedQueue松散隊(duì)列解析,鏈表是松散的,鏈表節(jié)點(diǎn)并不都是有效的,允許存在無效節(jié)點(diǎn)val=null,但是只有最后一個(gè)節(jié)點(diǎn)才能next=null,需要的朋友可以參考下2023-12-12Java虛擬機(jī)JVM類加載機(jī)制(從類文件到虛擬機(jī))
所謂的類加載機(jī)制就是虛擬機(jī)將class文件加載到內(nèi)存,并對(duì)數(shù)據(jù)進(jìn)行驗(yàn)證,轉(zhuǎn)換解析和初始化,形成虛擬機(jī)可以直接使用的java類型,本文給大家介紹類加載機(jī)制過程從類文件到虛擬機(jī)的詳細(xì)說明,感興趣的朋友跟隨小編一起看看吧2021-06-06詳解Spring Cloud Gateway 數(shù)據(jù)庫存儲(chǔ)路由信息的擴(kuò)展方案
這篇文章主要介紹了詳解Spring Cloud Gateway 數(shù)據(jù)庫存儲(chǔ)路由信息的擴(kuò)展方案,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11