在spring启动中,你可以直接使用应用程序属性!
例如:
@Scheduled(fixedDelayString = "${my.property.fixed.delay.seconds}000")private void process() { // your impl here}请注意,如果未定义属性,你还可以具有默认值,例如,默认值为“ 60”(秒):
@Scheduled(fixedDelayString = "${my.property.fixed.delay.seconds:60}000")我发现的其他内容:
- 该方法必须无效
- 该方法必须没有参数
- 该方法可能是 private
我发现可以
private方便地使用可见性,并以此方式使用它:
@Servicepublic class MyService { public void process() { // do something } @Scheduled(fixedDelayString = "${my.poll.fixed.delay.seconds}000") private void autoProcess() { process(); }}作为
private,计划的方法可以在你的服务本地使用,而不能成为服务API的一部分。
同样,这种方法允许
process()方法返回一个值,而
@Scheduled方法可能不会。例如,你的
process()方法如下所示:
public ProcessResult process() { // do something and collect information about what was done return processResult; }提供有关处理过程中发生的情况的一些信息。



