我想@Value
在一个属性上使用,但我总是得到0
(在 int 上)。
但是在构造函数参数上它可以工作。
例子:
@Component
public class FtpServer {
@Value("${ftp.port}")
private int port;
public FtpServer(@Value("${ftp.port}") int port) {
System.out.println(port); // 21, loaded from the application.properties.
System.out.println(this.port); // 0???
}
}
该对象是弹簧管理的,否则构造函数参数将不起作用。
有谁知道是什么导致了这种奇怪的行为?