【发布时间】:2021-09-19 15:58:03
【问题描述】:
我没有在任何地方看到这样的问题,所以我要在这里问一下。我必须为一种对象类型创建几个实例,我必须实例化的实例数应该从文件 .properties 中提供。我尝试使用注释 @Value 但它总是给我
空指针异常
因为该值为空。 所以例如我有
application.properties
在我的资源文件夹中。 假设文件如下所示:
instances.number=5 ...
我使用注释:
@Value("${instances.number}")
private static String lastIndex;
我想以这种方式使用它:
psvm {
for(int i = 0; i < Integer.parseInt(lastIndex); i++) {
//creating an instance of object
}
}
所以我无法解析它,因为它是空值。我应该怎么做才能正确获取 instance.number 值?
...
【问题讨论】:
-
就像
@Autowired一样,使用@Value注入值仅适用于Spring bean。如果你的类不是 Spring bean,那么这些注释什么都不做,你的字段将保持null。
标签: java spring-boot properties-file