成免费的crm,久久国产精品新农夫导航新妓网,恋夜秀场全部视频安卓手机,女校花强奷在线播放A级

Spring 自動裝配

spring 自動裝配

 

spring框架的自動裝配功能使您可以隱式注入對象依賴項。它在內(nèi)部使用setter或構(gòu)造函數(shù)注入。

自動裝配不能用于注入基本值和字符串值。它僅適用于參考。

 

自動裝配的優(yōu)點

它需要 更少的代碼,因為我們不需要編寫代碼來顯式注入依賴項。

 

自動裝配的缺點

沒有程序員的控制權(quán)。

它不能用于原始值和字符串值。

 

自動裝配模式

有很多自動裝配模式:

模式 說明
no 這是默認的自動裝配模式。這意味著默認情況下沒有自動裝配。
byname byname模式根據(jù)bean的名稱注入對象依賴項。在這種情況下,屬性名稱和bean名稱必須相同。它在內(nèi)部調(diào)用setter方法。
bytype bytype模式根據(jù)類型注入對象依賴項。因此屬性名稱和bean名稱可以不同。它在內(nèi)部調(diào)用setter方法。
constructor 構(gòu)造函數(shù)模式通過調(diào)用類的構(gòu)造函數(shù)來注入依賴項。它會調(diào)用具有大量參數(shù)的構(gòu)造函數(shù)。
autodetect 從spring 3開始不推薦使用。

 

自動裝配示例

讓我們看一下在spring使用自動裝配的簡單代碼。您需要使用bean元素的autowire屬性來應(yīng)用自動裝配模式。

 

讓我們看看spring自動布線的完整示例。為了創(chuàng)建此示例,我們創(chuàng)建了4個文件。

 

  • b.java
  • a.java
  • applicationcontext.xml
  • test.java

 

b.java

此類僅包含構(gòu)造函數(shù)和方法。

package org.sssit;
public class b {
b(){system.out.println("b is created");}
void print(){system.out.println("hello b");}
}

a.java

此類包含b類的引用以及構(gòu)造函數(shù)和方法。

package org.sssit;
public class a {
b b;
a(){system.out.println("a is created");}
public b getb() {
  return b;
}
public void setb(b b) {
  this.b = b;
}
void print(){system.out.println("hello a");}
void display(){
  print();
  b.print();
}
}

applicationcontext.xml

                
相關(guān)文章