<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    StevenBot-Saltsam

    眼睛能裝下世界,為何卻裝不下眼淚? 一只風箏一輩子只為一根線冒險。 那不是一場游戲,為何總有一根線牽著心懷,隱隱作疼? 那不是一段邂逅,為何飄在橋上的影子,總纏進夢鄉? 那不是一個夢境,為何你的溫柔私語,總是不經意的響起?

    導航

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    統計

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    datas link

    OSChinal Sources codes Library

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    spring提供了filed的值注入和method的返回值注入

    spring提供了filed的值注入和method的返回值注入。 

    1、Field值的注入 

    filed值注入需要使用org.springframework.beans.factory.config.FieldRetrievingFactoryBean來獲取類的靜態變量。 

    例如,我們通常在接口中定義常量: 

    view plaincopy to clipboardprint?package com.baobaotao.fb;  
    public interface CarBrandType {  
        String HONG_QI = "紅旗";  
        String JI_LI = "吉利";  
    }  
    package com.baobaotao.fb; 
    public interface CarBrandType { 
        String HONG_QI = "紅旗"; 
        String JI_LI = "吉利"; 


    下面利用FieldRetrievingFactoryBean獲取CarBandType接口中定義的常量,并注入到某個bean的屬性中: 

    view plaincopy to clipboardprint?<bean id="car" class="com.baobaotao.fb.Car">  
        <property name="brand" ref="hongQi"/>  
    </bean>  
    <bean id="hongQi" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"  
        <property name="staticField" value="com.baobaotao.fb.CarBrandType.HONG_QI"/>  
    </bean>  
    <bean id="car" class="com.baobaotao.fb.Car"> 
        <property name="brand" ref="hongQi"/> 
    </bean> 
    <bean id="hongQi" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean" 
        <property name="staticField" value="com.baobaotao.fb.CarBrandType.HONG_QI"/> 
    </bean> 



    Spring還允許用戶用常量的全限定名作為FieldRetrievingFactoryBean的id,其效果和通過配置staticField屬性是一樣的: 

    view plaincopy to clipboardprint?<bean id="car" class="com.baobaotao.fb.Car">  
        <property name="brand" ref="com.baobaotao.fb.CarBrandType.HONG_QI"/>  
    </bean>  
    <bean id="com.baobaotao.fb.CarBrandType.HONG_QI" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean" />  
    <bean id="car" class="com.baobaotao.fb.Car"> 
        <property name="brand" ref="com.baobaotao.fb.CarBrandType.HONG_QI"/> 
    </bean> 
    <bean id="com.baobaotao.fb.CarBrandType.HONG_QI" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean" /> 



    當然,也可以直接將FieldRetrievingFactoryBean以內置bean的方式對brand屬性進行賦值,這樣在配置上更緊湊一些: 

    view plaincopy to clipboardprint?<bean id="car" class="com.baobaotao.fb.Car">  
        <property name="brand">  
            <bean id="com.baobaotao.fb.CarBrandType.HONG_QI" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">  
            </bean>  
        </property>  
    </bean>  
    <bean id="car" class="com.baobaotao.fb.Car"> 
        <property name="brand"> 
            <bean id="com.baobaotao.fb.CarBrandType.HONG_QI" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"> 
            </bean> 
        </property> 
    </bean> 




    2、Method返回值的注入 
    Method返回值的注入需要使用MethodInvokingFactoryBean來完成。 

    在xml配置中,需要設定targetObject和targetMethod來指定目標bean和方法。如果使用靜態方法,則需要指定targetClass和targetMethod 

    配置文件如下: 

    view plaincopy to clipboardprint?<bean id="bdog" class="com.baobaotao.fb.Dog">  
      <property name="age">  
        <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">  
          <property name="targetObject">  
            <ref local="randomAge"/>  
          </property>  
          <property name="targetMethod">  
            <value>getAge</value>  
          </property>  
        </bean>  
      </property>  
    </bean>  
    <bean id="randomAge" class="com.baobaotao.fd.RandomAge" />  
    <bean id="bdog" class="com.baobaotao.fb.Dog"> 
      <property name="age"> 
        <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> 
          <property name="targetObject"> 
            <ref local="randomAge"/> 
          </property> 
          <property name="targetMethod"> 
            <value>getAge</value> 
          </property> 
        </bean> 
      </property> 
    </bean> 
    <bean id="randomAge" class="com.baobaotao.fd.RandomAge" /> 


    對于靜態方法: 

    view plaincopy to clipboardprint?<bean id="bdog" class="com.baobaotao.fb.Dog">  
      <property name="age">  
        <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">  
          <property name="targetClass">  
            <value>com.baobaotao.fb.RandomAge</value>  
          </property>  
          <property name="targetMethod">  
            <!-- getAge必須是靜態方法 -->  
            <value>getAges</value>  
          </property>  
        </bean>  
      </property>  
    </bean>  

    posted on 2011-11-15 14:04 Steven_bot 閱讀(598) 評論(0)  編輯  收藏 所屬分類: spring

    主站蜘蛛池模板: 4455永久在线观免费看| 暖暖日本免费中文字幕| 全免费a级毛片免费看无码| 亚洲视频在线观看免费| 久久精品成人免费观看| 亚洲av无码专区国产乱码在线观看 | 亚洲人成网站在线在线观看| 久久久高清免费视频| 亚洲中文字幕无码爆乳app| 最近中文字幕mv手机免费高清| 久久亚洲国产成人影院| 一区二区三区免费电影| 久久国产成人精品国产成人亚洲| 亚洲综合视频在线| 添bbb免费观看高清视频| 免费一级毛片在播放视频| 特级毛片爽www免费版| 亚洲动漫精品无码av天堂| 久久一本岛在免费线观看2020| 久久久无码精品亚洲日韩蜜臀浪潮| 57pao一国产成视频永久免费| 亚洲国产精品综合福利专区| 四色在线精品免费观看| 色视频在线观看免费| 亚洲成A人片777777| 在线观看的免费网站| 国产精品亚洲二区在线| 亚洲精品无码成人AAA片| 24小时日本电影免费看| 亚洲精品国产suv一区88| xxxxx免费视频| 国产成人综合亚洲绿色| 亚洲中文久久精品无码ww16| 四虎影视成人永久免费观看视频| 亚洲av日韩av综合| 久久精品国产亚洲Aⅴ香蕉| 国产又大又粗又长免费视频| 国产亚洲精品欧洲在线观看| 亚洲第一中文字幕| 国产午夜鲁丝片AV无码免费| 成人爽a毛片免费|