Spring @Value注释

mr.*_*ing 2 java spring spring-mvc

我是Spring新手,我想知道在Spring中使用@Value注释的先决条件/条件是什么?

我现在拥有的是一个Token类,它将硬编码的密钥作为字段.我想要做的是将此密钥移动到配置文件以消除硬编码但由于某种原因以下不起作用.

public class Token {
//...some code

    @Value("${my.secretKey}")
    private String key;

//...some code
}
Run Code Online (Sandbox Code Playgroud)

也许有任何标准技术来解决这类任务.
感谢帮助!

ps我有.properties包含my.secretKey=123条目的文件.

Jes*_*per 8

注入依赖项和值仅适用于由Spring管理的对象 - 当您手动创建对象时new,例如通过执行new Token(),然后Spring无法处理对象以注入依赖项和值.

Token对象必须是一个Spring bean才能工作.