2016-02-29 34 views
0

我在那裏,我想下面的Spring XML配置轉換成Java配置彈簧啓動應用程序:轉換的Spring XML來JavaConfig與變量和資源進口

<bean id="pageDAO" factory-bean="springWSDaoFactory" 
    factory-method="createPageDAO" lazy-init="true"> 
    <constructor-arg type="java.lang.String" value="${cds.host}" /> 
    <constructor-arg type="java.lang.Integer" value="${cds.port}" /> 
</bean> 

<!-- CoreApi + plugins configuration -->    
<import resource="classpath:coreAPI_SpringWSContext.xml"/>  
<bean name="springWSDaoFactory" class="com.blan.torque.dao.springws.SpringWSDAOFactory" lazy-init="true"> 
    <property name="serviceVersion" value="${service.version}"/> 
    <property name="securityKey" value="${service.key}"/> 
</bean> 

下面是我對javaconfig至今:

@Bean 
public PageDAO pageDAO() { 
    return springWSDAOFactory().createPageDAO(null, null); 
} 

@Bean 
public SpringWSDAOFactory springWSDAOFactory() { 
    SpringWSDAOFactory springWSDAOFactory = new SpringWSDAOFactory(); 
    springWSDAOFactory.setServiceVersion(null); 
    springWSDAOFactory.setSecurityKey(null); 
    return springWSDAOFactory; 
} 

我不知道如何用Java實現<import resource...../>更不用說導入變量,如${cds.host}。我已經把null作爲地方持有人。但有關如何使用註釋做到這一點的想法?

回答

1

在您的配置類中,您可以使用註釋@ImportResource而不是<import resource... />

要從屬性文件讀取字符串,嘗試使用@Value聲明一個字符串並使用先前聲明的字符串。

例如:

@Value("${service.version}") 
private String serviceVersion; 

然後將它作爲參數

springWSDAOFactory.setServiceVersion(this.serviceVersion); 

我希望幫助你。

+0

這就是我想要的完美。謝謝! – Richard