看了園齡已經(jīng)兩年多了,再不能寫完內(nèi)容直接點(diǎn)擊發(fā)布,留下一片密密麻麻的文字讓別人看的頭昏腦漲。所以現(xiàn)在每次寫完主要內(nèi)容后,還需要對(duì)于格式稍稍調(diào)整下。那么有沒(méi)有什么編輯模式能夠在你寫完文章后基本也把格式調(diào)的八九不離十,不會(huì)辣眼睛呢,當(dāng)然有,那就是Markdown。
本篇就在Markdown編輯環(huán)境下說(shuō)說(shuō)Spring的導(dǎo)入和混合配置
上篇提到了關(guān)于Spring的顯示配置方式有兩種,一種是基于XML配置,一種是基于JavaConfig的方式配置。對(duì)于這兩種配置方式并不是互斥關(guān)系,相反,他們兩能夠相互融合,有效的搭配完成Spring的bean注入。
這里分別介紹如何在JavaConfig中引用XML配置的bean以及如何在XML配置中引用JavaConfig。
JavaConfig中引用XML配置的bean
上篇我們看到配置類CDPlayerConfig具體代碼如下
@Configurationpublic class CDPlayerConfig { @Bean public CompactDisc compactDisc() { return new SgtPeppers(); } @Bean public CDPlayer cdPlayer(CompactDisc compactDisc) { return new CDPlayer(compactDisc); } }
在該配置類中注冊(cè)了兩個(gè)bean。假設(shè)讓CDPlayerConfig現(xiàn)在矯情一把,它認(rèn)為自己內(nèi)部注冊(cè)的bean太多了,它有點(diǎn)管不過(guò)來(lái)了(確實(shí)有點(diǎn)矯情過(guò)了),它準(zhǔn)備把compactDisc這個(gè)bean踢出去,讓別人來(lái)管管。
讓誰(shuí)管呢,這時(shí)候我們又新建了另外一個(gè)配置類CDConfig
@Configurationpublic class CDConfig { @Bean public CompactDisc compactDisc() { return new SgtPeppers(); } }
這個(gè)配置類簡(jiǎn)潔到不行,只有一個(gè)CompactDisc的bean。
現(xiàn)在有了這兩個(gè)配置類,也集齊了兩個(gè)bean,那么該如何把他們整合到一起呢,建立起它們的聯(lián)系。這時(shí)候我們新建一個(gè)連接類SoundSystemConfig
@Configuration@Import(CDPlayerConfig.class, CDConfig.class)public class SoundSystemConfig { }
這樣就解決了在一個(gè)配置類中要加載的bean過(guò)多的問(wèn)題。
那么問(wèn)題來(lái)了,如果這時(shí)候CompactDisc接口的實(shí)現(xiàn)類BlankDisc是聲明在XML中,這兩種顯示聲明又會(huì)如何結(jié)合呢。
public class BlankDisc implemen