使用Spring Boot从外部配置访问属性

时间:2014-10-26 05:46:54

标签: spring groovy spring-boot

我有一个spring boot web服务,我正在尝试访问控制器中的外部属性,例如

@RestController
public class GreetingController {
    @Value( "${my.name}" )
    String myname
...

问题是它无法编译,给出错误

Attribute 'value' should have type 'java.lang.String'; but found type 'java.lang.Object' in @org.springframework.beans.factory.annotation.Value

有人可以指出我在这里做错了吗?

谢谢!

- 约翰

1 个答案:

答案 0 :(得分:1)

我猜你正在使用Groovy。如果是这样,使用$会导致String成为GString。你需要用反斜杠来逃避它:

@Value("\${my.name}")

或使用单引号:

@Value('${my.name}')