做项目时遇到一个需求,需要在web后台管理页面设置开关灯时间,然后实现灯源的自动开关操作
首先想到的是springboot自带的@Schedule注解,但是有个问题,因为我要在前端设置时间,而注解的实现方法只能是写一个死的cron表达式在那儿,要更改的话只能改代码,显然不符合要求
于是用了quartz,实现的效果是每十秒从数据库获取一次cron表达式,如果和当前定时任务的cron不同的话,重新设置定时任务,这样的话,前端就只用调用数据库的修改接口,就可以实现设置新的定时任务
pom.xml,springboot需要的就不多说了,这里是quartz需要的
<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.1</version> </dependency> <dependency>