aop:declare-parents註解

http://www.blogjava.net/jackfrued/archive/2010/02/27/314060.htmlhtml

1 <aop:aspect>
2     <aop:declare-parents
3          types-matching="com.springinaction.springidol.Performer+"
4          implement-interface="com.springinaction.springidol.Contestant"
5           default-impl="com.springinaction.springidol.GraciousContestant"
6      />
7 </aop:aspect>

 

或者用委託代理java

1 <aop:aspect>
2     <aop:declare-parents
3          types-matching="com.springinaction.springidol.Performer+"
4          implement-interface="com.springinaction.springidol.Contestant"
5          delegate-ref="contestantDelegate"
6 </aop:aspect>
7 
8 
9 <bean id="contestantDelegate" class="com.springidol.GraciousContestant">

 

目標是 types-matching的類,spring讓它實現 implement-interface所指向的接口, 而具體實現則經過default-impl屬性來賦予。spring

 

因此 讓 types-matching 的類添加了 接口而且指定了實現。spa

因此從spring容器中拿出來的 performer 對象   能夠被強轉換成 Contestant 類型的對象。若是調用Contestant的方法必需要強轉,由於這些都是spring背後作了不少事情。而不是代碼顯示地繼承了它的接口。.net

相關文章
相關標籤/搜索