Spring 配置文件中ref bean與ref local區別

今天在做SSH框架Demo實例時,在ApplicationResources.properties文件時對<ref bean>與<ref local>感到不解,經查找資料才弄明白,如下:

   <bean id="userDAOProxy"

        class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">

        <property name="transactionManager">

            <ref bean="transactionManager" />

        </property>

        <property name="target">

            <ref local="UserDAO" />

        </property>

    </bean>

1、用local屬性指定目標bean可以利用xml解析器的能力在同一個文件中驗證xml id引用.如果在同一個文件中沒有匹配的元素,xml解析器就會產生一個error,所以如果目標bean在同一個xml文件中,那麼用local形式是最好的選擇.


2、可以這麼說,<ref bean 是尋找全局中的bean; <ref local 是尋找本xml文件中的bean 


3、<ref>提供瞭如下幾方面的屬性:
1)bean:在當前Spring XML配置文件中,或者在同一BeanFactory(ApplicationContext)中的其他JavaBean中.
2)local:在當前Spring XML配置文件中.其依賴的JavaBean必須存在於當前Spring XML培植文件中.如果藉助 於Spring IDE,則在編譯期可以對其依賴的JavaBean進行驗證。基於local方式,開發者能夠使用到XML本身提供的優勢,而進行驗證。

3)parent:用於指定其依賴的父JavaBean定義。



轉載於https://blog.csdn.net/yangqicong/article/details/6622843

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章