gpt4 book ai didi

Spring Boot @Scheduled cron

转载 作者:IT老高 更新时间:2023-10-28 13:47:10 26 4
gpt4 key购买 nike

有没有办法从 Spring 的 @Scheduled cron 配置中的 propertyClass 调用 getter(甚至是变量)?以下内容无法编译:

@Scheduled(cron = propertyClass.getCronProperty())@Scheduled(cron = variable)

我想避免直接抢属性(property):

@Scheduled(cron = "${cron.scheduling}")

最佳答案

简短的回答 - 开箱即用是不可能的。

@Scheduled 注释中作为“cron 表达式”传递的值在 ScheduledAnnotationBeanPostProcessor 类中使用 StringValueResolver 接口(interface)的实例进行处理.

StringValueResolver 有 3 个开箱即用的实现 - Placeholder(例如 ${})、Embedded 值和 静态字符串 - 没有一个可以实现你正在寻找的。

如果您必须不惜一切代价避免在注释中使用属性占位符,请摆脱注释并以编程方式构造所有内容。您可以使用 ScheduledTaskRegistrar 注册任务,这正是 @Scheduled 注释的实际作用。

我会建议使用最简单的解决方案并通过测试。

关于Spring Boot @Scheduled cron,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36204858/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com