程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> [轉]spring_bean的屬性,spring_bean屬性

[轉]spring_bean的屬性,spring_bean屬性

編輯:JAVA綜合教程

[轉]spring_bean的屬性,spring_bean屬性


1.parent

表示繼承的父類

如果有很多繼承同一個父類的BEAN

那麼在配置文件中實例那些BEAN時候可以省略掉父類已經注入的屬性

bean定義繼承父bean定義,它可以覆蓋父bean的一些值,或者它需要的值。

那麼在配置文件中實例那些BEAN時候可以省略掉父類已經注入的屬性

<bean id="carnetMgr" parent="txProxyTemplate">

<property name="target">

<bean class="ecustoms.carnet.app.biz.CarnetMgr">

<property name="extensionHistoryDAO" ref="extensionHistoryDAO"/>

<property name="stockTransactionDAO" ref="stockTransactionDAO"/>

<property name="carnetDAO" ref="carnetDAO"/>

             </bean>

</property>

</bean>

2.list, set, map和props元素分別用來設置類型為List,Set,Map和Propertis的屬性值。分別用來為bean傳入集合值。

 對應的spring的配置文件舉例如下:

< bean  id ="chinese"  class ="Chinese" >     

  < property  name ="friends" >     

             < list >     

                 < value > 張三 </ value >     

                 < value > 李四 </ value >     

                 < value > 王五 </ value >     

             </ list >     

   </ property >     

   < property  name ="score" >     

             < map >     

                 < entry  key ="數學" >     

                     < value > 60 </ value >     

                 </ entry >     

                 < entry  key ="英語" >     

                     < value > 70 </ value >     

                 </ entry >     

                 < entry  key ="語文" >     

                     < value > 80 </ value >     

                 </ entry >     

                 < entry  key ="物理" >     

                     < value > 90 </ value >     

                 </ entry >     

                 < entry  key ="化學" >     

                     < value > 95 </ value >     

                 </ entry >     

             </ map >     

   </ property >     

   < property  name ="basicInfo" >     

             < props >     

                 < prop  key ="身高" > 165 </ prop >     

                 < prop  key ="體重" > 45kg </ prop >     

                 < prop  key ="學歷" > 大學本科 </ prop >     

             </ props >     

    </ property >     

    < property  name ="interest" >     

             < set >     

                 < value > 唱歌 </ value >     

                 < value > 跳舞 </ value >     

                 < value > 書法 </ value >     

             </ set >     

    </ property >     

 </ bean >     

對應的java代碼如下:

public   class  Chinese  implements  People   ...{    

     private  List friends  =   new  ArrayList();    

     private  Map score  =   new  HashMap();    

     private  Properties basicInfo  =   new  Properties();    

     private  Set interest  =   new  HashSet();    

     // 省略對應set方法     

}   

3.maxSize表示每頁顯示數據的最大值

<property name="maxSize"><value>20</value></property>

Bean元素出了上面的兩個屬性之外,還有很多其它屬性。說明如下:

<bean

    id="beanId"(1)

    name="beanName"(2)

    class="beanClass"(3)

    parent="parentBean"(4)

    abstract="true | false"(5)

    singleton="true | false"(6)

    lazy-init="true | false | default"(7)

    byName | byType | constructor | autodetect | default"(8)

    dependency-check = "none | objects | simple | all | default"(9)

    depends-on="dependsOnBean"(10)

    init-method="method"(11)

    destroy-method="method"(12)

    factory-method="method"(13)

  factory-bean="bean">(14)

</bean>

4.id: Bean的唯一標識名。它必須是合法的XML ID,在整個XML文檔中唯一。

5.name: 用來為id創建一個或多個別名。它可以是任意的字母符合。多個別名之間用逗號或空格分開。

6.class: 用來定義類的全限定名(包名+類名)。只有子類Bean不用定義該屬性。

7.abstract(默認為”false”):用來定義Bean是否為抽象Bean。它表示這個Bean將不會被實例化,一般用於父類Bean,因為父類Bean主要是供子類Bean繼承使用。

8.singleton(默認為“true”):定義Bean是否是Singleton(單例)。如果設為“true”,則在 BeanFactory作用范圍內,只維護此Bean的一個實例。如果設為“flase”,Bean將是Prototype(原型)狀 態,BeanFactory將為每次Bean請求創建一個新的Bean實例。

9.lazy-init(默認為“default”):用來定義這個Bean是否實現懶初始化。如果為“true”,它將在BeanFactory 啟動時初始化所有的Singleton Bean。反之,如果為“false”,它只在Bean請求時才開始創建Singleton Bean。

10.autowire(自動裝配,默認為“default”):它定義了Bean的自動裝載方式。

    1、“no”:不使用自動裝配功能。

    2、“byName”:通過Bean的屬性名實現自動裝配。

    3、“byType”:通過Bean的類型實現自動裝配。

    4、“constructor”:類似於byType,但它是用於構造函數的參數的自動組裝。

    5、“autodetect”:通過Bean類的反省機制(introspection)決定是使用“constructor”還是使用“byType”。

11.dependency-check(依賴檢查,默認為“default”):它用來確保Bean組件通過JavaBean描述的所以依賴關系都得到滿足。在與自動裝配功能一起使用時,它特別有用。

1、 none:不進行依賴檢查。

2、 objects:只做對象間依賴的檢查。

3、 simple:只做原始類型和String類型依賴的檢查

4、 all:對所有類型的依賴進行檢查。它包括了前面的objects和simple。

12.depends-on(依賴對象):這個Bean在初始化時依賴的對象,這個對象會在這個Bean初始化之前創建。

13.init-method:用來定義Bean的初始化方法,它會在Bean組裝之後調用。它必須是一個無參數的方法。

14.destroy-method:用來定義Bean的銷毀方法,它在BeanFactory關閉時調用。同樣,它也必須是一個無參數的方法。它只能應用於singleton Bean。

15.factory-method:定義創建該Bean對象的工廠方法。它用於下面的“factory-bean”,表示這個Bean是通過工廠方法創建。此時,“class”屬性失效。

16.factory-bean:定義創建該Bean對象的工廠類。如果使用了“factory-bean”則“class”屬性失效。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved