2010-11-25 18 views
5

Yay tabanlı uygulama üzerinde çalışıyorum. XML basittir, ancak hemen hemen aynı özdeş parçaları içerir. Ben parametrelerle ithalat çeşit kullanmak mutlu olurumSpring XML parçalarının yeniden kullanılması

<bean id="deviceDaoTarget" class="com.mycompany.dao.hibernate.DeviceDAOHibernateImpl" 
    autowire="byName" /> 

<bean id="deviceDAO" class="org.springframework.aop.framework.ProxyFactoryBean"> 
    <property name="proxyInterfaces"> 
     <value>com.mycompany.dao.DeviceDAO</value> 
    </property> 
    <property name="interceptorNames"> 
     <list> 
      <value>hibernateInterceptor</value> 
      <value>deviceDaoTarget</value> 
     </list> 
    </property> 
</bean> 

: gibi Mesela ben 5 farklı DAO vb nesneleri 2 sıraları her DAO Yapılandırma var görünüyor. ör .:

<import resource="spring-dao.xml"> 
    <param name="dao.interface">com.mycompany.dao.hibernate.DeviceDAO</param> 
    <param name="dao.class">com.mycompany.dao.hibernate.DeviceDAOHibernateImpl</param> 
    <param name="dao.target">deviceDaoTarget</param> 
</import> 

bu mümkün gibi bir şey mi, farklı parametrelerle defalarca diyoruz sonra

<bean id="${dao.target}" class="${dao.class}" 
    autowire="byName" /> 

<bean id="deviceDAO" class="org.springframework.aop.framework.ProxyFactoryBean"> 
    <property name="proxyInterfaces"> 
     <value>${dao.interface}</value> 
    </property> 
    <property name="interceptorNames"> 
     <list> 
      <value>hibernateInterceptor</value> 
      <value>${dao.target}</value> 
     </list> 
    </property> 
</bean> 

ve: Örneğin böyle DAO parametrized yapılandırması oluşturmak istiyorum?

cevap

3

Ortak yapılandırmaya sahip bir <bean id="parentBean" abstract="true" ...>...</bean> tanımlayabilir ve daha sonra bu fasülye yalnızca belirli yapılandırma ile <bean id="childBean" parent="parentBean" ...>...</bean> var.

+0

Harika! Teşekkür ederim. Fasulyelerin mirasını nasıl unuttum? – AlexR

İlgili konular