我正在开发一个小项目,我正在寻找一种在 Spring 中处理上下文的好方法。我发现自己创建了一个上下文持有者类来使用 setter 注入(inject)来保存我的属性。我遇到的问题是我正在获取一个上下文对象并将其传递。我正在寻找一种设计模式或可以帮助我以更干净的方式做到这一点的东西。举一个简单的例子,假设我目前正在做类似下面的事情,其中字段是通过 setter 注入(inject)来注入(inject)的,我正在寻找一种更好的方法来注入(inject)属性另外,假设我有大量属性,太大了干净地使用@Value之类的东西:
public class MyContext{
private String configItem1;
private String configItem2;
private String configItem3;
public void setConfigItem1(String configItem1){
this.configItem1 = configItem1;
}
public void setConfigItem2(String configItem2){
this.configItem2 = configItem1;
}
public void setConfigItem3(String configItem3){
this.configItem3 = configItem1;
}
}
示例 spring 上下文:
<bean id="appProperties"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:my-app.properties</value>
</list>
</property>
</bean>
<bean id="myContext" class="these.are.not.the.droids.you.are.looking.for.context.MyContext" >
<property name="configItem1" value="${some.item.1}" />
<property name="configItem2" value ="${some.item.2}"/>
<property name="configItem3" value="${some.item.3}" />
</bean>
最佳答案
您是否考虑过简单地使用 Map 来存储值? Java 本质上是一种冗长的语言。所以我想你没有太多选择。 http://www.java2s.com/Tutorial/Java/0417__Spring/FillMap.htm
关于java - 在 Spring 中处理上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33839684/