如何消除循環(huán)依賴 Spring如何解決循環(huán)依賴的問題?
Spring如何解決循環(huán)依賴的問題?Spring首先創(chuàng)建對象,將它們放置在緩存中,然后設(shè)置它們的屬性。例如,a和B相互依賴。首先,創(chuàng)建一個對象并將其放入緩存。在設(shè)置屬性時,我們發(fā)現(xiàn)它依賴于B。此時,我
Spring如何解決循環(huán)依賴的問題?
Spring首先創(chuàng)建對象,將它們放置在緩存中,然后設(shè)置它們的屬性。例如,a和B相互依賴。首先,創(chuàng)建一個對象并將其放入緩存。在設(shè)置屬性時,我們發(fā)現(xiàn)它依賴于B。此時,我們初始化B并設(shè)置B的屬性。我們發(fā)現(xiàn)它依賴于a,并且緩存中有對a的引用,盡管它尚未完全初始化。B初始化后,a可以得到B。這只是解決集合依賴,而不是構(gòu)造函數(shù)依賴。
隨便說,在一般的建筑設(shè)計中,上層是轉(zhuǎn)移到下層的,同一層和下層都不應(yīng)該轉(zhuǎn)移到上層。我們可以考慮設(shè)計中是否有問題。
希望對你有所幫助,如果有用,記得要喜歡哦,你也可以關(guān)注我,會分享一些技術(shù)文章的。
如何解決循環(huán)依賴?
1. 可以設(shè)置優(yōu)先級。例如,a的優(yōu)先級為1,B的優(yōu)先級為2。如果a在等待B的資源,而B也在等待a的資源,如果沒有設(shè)置優(yōu)先級,它們總是等待對方形成死鎖。在設(shè)置優(yōu)先級后,B將退出等待并將資源分配給a,這解決了循環(huán)依賴的問題。
循環(huán)依賴解決辦法?
如果您詢問spring的循環(huán)依賴,那么使用屬性注入生成bean的singleton模式可以支持循環(huán)依賴,因為spring creating bean的singleton模式將緩存當(dāng)前構(gòu)建的bean,然后創(chuàng)建屬性bean。在創(chuàng)建屬性bean時,請?zhí)顚懼熬彺娴腷ean以完成bean構(gòu)造
不要考慮它。它不存在。西醫(yī)的副作用是什么?它是破壞醫(yī)學(xué)規(guī)律和人性的必然結(jié)果。這個問題沒有辦法解決,副作用會越來越嚴(yán)重。