有没有办法在方法中使用 Spring SpEL 来获取 .properties 值?
Is there a way to use Spring SpEL inside a method to get a .properties value?
我有一个带@Component 注释的计划任务class。我成功地从 .properties 文件中提取了延迟时间的数据,但我想稍后在方法中使用相同的值。
@Scheduled(fixedDelayString = "${mypropvalue}")
public void doScheduledTask () throws IOException
{
// do some stuff
log.info("The doScheduledTask finished at {} ", dateFormat.format(new Date()));
log.info("The next task will run in {} ms", @Value("${mypropvalue}"));
}
最后一行的@Value 有一个编译错误"Annotations are not allowed here"。如何从方法内部再次获取该值?因为我使用的是@Scheduled,所以我无法将@Value 作为参数传入。
将其添加为字段
@Value("${mypropvalue}
private long fixedDelay
然后
this.fixedDelay
在你的方法中。
我有一个带@Component 注释的计划任务class。我成功地从 .properties 文件中提取了延迟时间的数据,但我想稍后在方法中使用相同的值。
@Scheduled(fixedDelayString = "${mypropvalue}")
public void doScheduledTask () throws IOException
{
// do some stuff
log.info("The doScheduledTask finished at {} ", dateFormat.format(new Date()));
log.info("The next task will run in {} ms", @Value("${mypropvalue}"));
}
最后一行的@Value 有一个编译错误"Annotations are not allowed here"。如何从方法内部再次获取该值?因为我使用的是@Scheduled,所以我无法将@Value 作为参数传入。
将其添加为字段
@Value("${mypropvalue}
private long fixedDelay
然后
this.fixedDelay
在你的方法中。