2014-09-04 61 views
1

我有一类情况是这样的:如何在Spring中配置一个Scala案例类?

case class ElasticIndex(name: String, host: String, port: Int)

...我需要用Spring一个它的实例。实际的配置数据应该来自一个属性文件。纵观Java代码,似乎这样的事情将是理想的:

case class ElasticIndex(@Value("${es.name}") name: String, …

...但在看文档,我不认为这将飞。

在这种情况下你应该怎么做?

(我不喜欢把我的ElasticIndex类到一个JavaBean,使你的代码只是为了支持框架只是看起来不正确的缘故可变的。)

回答

0

使用一个单独的@Configuration类具有@Bean方法与@Value参数。

我更喜欢在@Configuration类中指定属性,因为它使代码更具可重用性:您可以通过加载另一个配置类来创建另一个设置。