类型转换以生成Cron表达式

时间:2018-12-14 18:42:54

标签: java cron quartz-scheduler crontrigger

我正在尝试使用Java代码生成cron表达式,并且在类型转换上很难生成cron表达式。

所以我的问题是我们可以将类型转换SimpleScheduleBuilder键入CronTrigger来生成Cron表达式吗?

SimpleScheduleBuilder ssb = 
SimpleScheduleBuilder.repeatHourlyForever(date.getHours());
CronTrigger ct = (CronTrigger) newTrigger().withSchedule(ssb).build();

当我尝试运行这段代码时,我得到了

java.lang.ClassCastException: org.quartz.impl.triggers.SimpleTriggerImpl cannot be cast to org.quartz.CronTrigger

那么您能不能允许我将类型转换SimpleScheduleBuilder键入CronTrigger

1 个答案:

答案 0 :(得分:0)

问题是您不能在逻辑上混合<body> @yield('after_body_open') {{--Header--}} <header> @include('layouts.top-bar') @include('layouts.header') </header> {{--Page content--}} <main> @yield('content') </main> <div id="play"></div>{{--Vue instance--}} <script src="{{ asset('js/vue/play.js') }}"></script> **TO HERE** {{--Footer--}} <footer></footer> {{--Notifications block--}} <div id="notifications"></div>{{--Vue instance--}} {{--Required JS files--}} <script src="{{ asset('js/vue/navigation.js') }}"></script> <script src="{{ asset('js/vue/notifications.js') }}"></script> <script src="{{ asset('js/vue/play.js') }}"></script> **FROM HERE** @yield('before_body_close') </body> SimpleScheduleBuilderCronTrigger用于SimpleScheduleBuilderSimpleTrigger用于CronScheduleBuilder

除了定义时间表的方式外,就最佳实践或性能而言,两种触发器类型之间确实没有区别。因此,如果更简单的时间表定义适合您的需求,我建议您只使用CronTrigger

关于SimpleTriggerCronTrigger的教程对这些差异进行了详细介绍。