天天看点

项目ITP(七) javaWeb 整合 Quartz 实现动态调度 并且 持久化Written In The Fontweb.xml注册监听器ScheduleStartListener监听器类sedion.jeffli.wmuitp.listener.ScheduleStartListener实现测试案例第一步: Job 接口实现类JobTest测试案例第二步:QuartzTest

需要:

导入web-inf/lib/quartz-2.2.1.jar

然后数据库建相关表格,可以去quartz-2.2.1\docs\dbtables目录下找到对应的数据库表格.(我这边mysql , 导入 tables_mysql.sql 即可)

配置quartz.properties

注册quartz监听器,监听项目是否启动或者重启.保证项目启动或重启时,所有任务会被重新安排到任务调度中.

web.xml添加一个listener:

监听器类主要是实现recovery各个任务,重新恢复在triggergroups组中所有的触发器,按新的trigger重新设置job执行.顺便说下,这个异常自定义(不需要删除即可): sedion.jeffli.wmuitp.exception.quartzexception;

顾名思义,用于自定义任务,方法的实现.你可以在其中写入任意你想要在那个点上干的事情(操作数据库,前台显示等).在下面那处地方写入你想要写的:system.out.println("添入需要加入任务的具体操作"); .顺便说下,这个异常自定义(不需要删除即可):

顾名思义,用于实现,检验.可以通过schedulerfactory创建一个scheduler实例,把触发器在集群节点实例命名的组只是为了区分(伐木)从什么地方定问调度重新执行此作业,如果它是正在进行时调度下去.

这边,项目tomcat启动.这边我的主机时间是:

项目ITP(七) javaWeb 整合 Quartz 实现动态调度 并且 持久化Written In The Fontweb.xml注册监听器ScheduleStartListener监听器类sedion.jeffli.wmuitp.listener.ScheduleStartListener实现测试案例第一步: Job 接口实现类JobTest测试案例第二步:QuartzTest

然后我们运行:

看控制台:

先输出

然后时间到了

然后测试 quartz的持久化.(持久化测试就是 先开启任务,然后 中间断开重启服务器),之间你会发现控制台:

今天我重写了下,: