我有一个属性文件名为documentum,内容如下:
#test
dfs.repositoryName = CUDO
dfs.contextRoot = http://13.209.9.28:9080/services
dfs.username = 1234
dfs.password = fx8888
dfs.moduleName = core
我已在beans.xml
中配置了此文件<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="ignoreUnresolvablePlaceholders" value="false" />
<property name="locations">
<list>
<value>file:${app.home}/documentum.properties</value>
</list>
</property>
</bean>
现在我想做这样的事情,但我不知道如何在我的java代码中实现这一点。
String repository = ${dfs.repositoryName};
如果我在同一个类中使用@value注释,那么它工作正常但是如果我像这样使用单独的类
package au.com.fxa.sfdc.custdocs.util;
import org.springframework.beans.factory.annotation.Value;
public class DocumentumConfigUtil {
@Value("${dfs.repositoryName}")
private String repositoryName;
@Value("${dfs.contextRoot}")
private String contextRoot;
@Value("${dfs.username}")
private String username;
@Value("${dfs.password}")
private String password;
@Value("${dfs.module}")
private String module;
public String getRepositoryName() {
return repositoryName;
}
public String getContextRoot() {
return contextRoot;
}
public String getUsername() {
return username;
}
public String getPassword() {
return password;
}
public String getModule() {
return module;
}
}
然后创建这个类的对象并尝试通过getter方法访问它,它给我空值。
答案 0 :(得分:1)
使用@Value
注释。
定义类属性,如
@Value("${dfs.repositoryName}")
String repository