java - 在 Spring 中处理上下文

标签 java spring spring-mvc design-patterns properties-file

我正在开发一个小项目,我正在寻找一种在 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/

相关文章:

html - Thymeleaf 问题 css?

java - 如何使用 JSPinner 动态设置 JTextFields?

java - 如何在 Camel quickfixj 组件中启用多线程

java - 如何 sleep ()或等待()通过实现可运行接口(interface)创建的线程?

java - Spring MVC 验证注释不显示错误消息

java - 配置多个数据源时发现 IllegalTransactionStateException 预绑定(bind) JDBC 连接

java - 如何使用 Java Webapp 将文件上传到 MongoDB?

java - Android:SlidingLayer 事件监听器 Onclose

java - 如何在 Spring 的共享 jar 中导入属性文件?

java - 在 Spring MVC 中重用模板页面