Spring启动YML属性

时间:2015-03-30 19:24:44

标签: java spring spring-boot yaml properties-file

我有一个“ spring boot ”应用程序,它在我的应用程序中使用“ application.yml ”文件作为外部化属性。 以下是我的YML的一小部分:

    direction:
      threshold: 2
      head: From {1} head {0}
      turn: Turn {0} 
      straight: Continue {0}
      elevator.A: Choose floor {0} 
      elevator.E: Take elevator to floor {0}
      elevator.W: Take elevator to floor {0}
      destination: Arrive at {0}

我研究了将属性纳入spring应用程序的各种方法。他们中的大多数都指我创建一个bean,如下所示

@Configuration
@EnableConfigurationProperties
@ConfigurationProperties(prefix="direction")
public class ApplicationConfig {
     public String threshold;
     public String head;
     ........
}

然后将所有单个属性声明为变量并添加getter setter。

在我切换到SpringBoot和YML之前,我使用了 PropertyPlaceholderConfigurer ,其中有一个名为 processProperties 我可以处理所有属性并将它们放在Map中,然后访问应用程序中的地图以获取单个值。这个方法的缺点是我不得不像这样在XML中声明一个 PropertyManager

<bean class="org.bii.xyz.util.PropertyManager">
    <property name="locations">
        <list>
            <value>/res/xyz.properties</value>
            <value>/res/environment.properties</value>
        </list>
    </property>
</bean>

我想避免使用上下文XML文件。

有没有办法在不使用上下文xml文件的情况下使用类似于ProcessProperties和YML文件的东西?

到目前为止,我的所有搜索都引导我创建一个bean并使用SEPL声明个人属性或访问属性文件 $ {...}

0 个答案:

没有答案