对外部文件中的属性的访问在控制器中工作,但在域类中不起作用

时间:2014-12-04 06:15:01

标签: spring spring-boot

我在外部application.properties文件中设置了一个属性,发现我可以在控制器中访问它,但不能在域类中访问它。我正在使用SpringBoot 1.1.9以及下面列出的groovy和代码片段。

有人可以解释我在这里缺少的东西吗?

谢谢!

- 约翰

//Application class used to startup    
@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

//Controller - property is injected
@RestController
class CityController {
    @Value( '${sample.property}' )
    String stringTemplate

   @RequestMapping(value = "/", method = RequestMethod.GET)
   public String index(HttpServletResponse response) {
       return String.format(stringTemplate, 'world')
   }
}

//Domain class - property does not seem to be injected
@Component
public class City {
    @Value( '${sample.property}' )
    String stringTemplate

    String toString() {
        return String.format(stringTemplate, 'world')
    }
}

0 个答案:

没有答案