在實際開發中,如果我們A對象調用B,B調用C,C調用D的話我們程序的耦合性就會變高。(耦合大致分為類與類之間的依賴,方法與方法之間的依賴。)
在很久以前的三層架構編程時,都是控制層調用業務層,業務層調用數據訪問層時,都是是直接new對象,耦合性大大提升,代碼重復量很高,對象滿天飛
為了避免這種情況,Spring使用工廠模式編程,寫一個工廠,由工廠創建Bean,以后我們如果要對象就直接管工廠要就可以,剩下的事情不歸我們管了。Spring IOC容器的工廠中有個靜態的Map集合,是為了讓工廠符合單例設計模式,即每個對象只生產一次,生產出對象后就存入到Map集合中,保證了實例不會重復影響程序效率。