今天在做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配置文件中驗證 xml id 引用,沒有匹配的元素,xml 解析器就會產生一個 error, 所以如果引用的 bean 在同一個 XML配置 文件中 , 那么用 local 形式是最好的選擇 .
2 、可以這么說,<ref bean> 是尋找所有 XML配置文件中的 bean; <ref local> 是尋找本 xml 文件中的 bean.
3 、<ref> 提供了如下幾方面的屬性 :
1)bean: 在當前 Spring XML 配置文件中,或者在同一 BeanFactory(ApplicationContext) 中的其他 JavaBean 中尋找引入的BEAN.
2)local: 僅在當前 Spring XML 配置文件中尋找引入的BEAN.
如果借助于 Spring IDE, 則在編譯期可以對其依賴的 JavaBean 進行驗證。基于 local 方式,開發者能夠使用到 XML 本身提供的優勢,而進行驗證。
3)parent: 用于指定其依賴的父 JavaBean 定義。
posted on 2007-11-26 09:21
紫蝶∏飛揚↗ 閱讀(7939)
評論(0) 編輯 收藏 所屬分類:
Spring