crontriggerbeanQuartz时间表达式

crontriggerbean  时间:2021-06-06  阅读:()

spring定时器配置

有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。

1.Java Timer定时 首先继承java.util.TimerTask类实现run方法 import java.util.TimerTask; public class EmailReportTask extends TimerTask{ @Override public void run() { ... } } 在Spring定义 ... 配置Spring定时器 <bean id="scheduleReportTask" class=&.springframework.scheduling.timer.ScheduledTimerTask"> <property name="timerTask" ref="reportTimerTask" /> <property name="period"> <value>86400000value> property> bean> timerTask属性告诉ScheduledTimerTask运行哪个。

86400000代表24个小时 启动Spring定时器 Spring的TimerFactoryBean负责启动定时任务 <bean class=&.springframework.scheduling.timer.TimerFactoryBean"> <property name="scheduledTimerTasks"> <list><ref bean="scheduleReportTask"/>list> property> bean> scheduledTimerTasks里显示一个需要启动的定时器任务的列表。

可以通过设置delay属性延迟启动 <bean id="scheduleReportTask" class=&.springframework.scheduling.timer.ScheduledTimerTask"> <property name="timerTask" ref="reportTimerTask" /> <property name="period"> <value>86400000value> property> <property name="delay"> <value>3600000value> property> bean> 这个任务我们只能规定每隔24小时运行一次,无法精确到某时启动 2.Quartz定时器 首先继承QuartzJobBean类实现executeInternal方法 .quartz.JobExecutionContext; .quartz.JobExecutionException; .springframework.scheduling.quartz.QuartzJobBean; public class EmailReportJob extends QuartzJobBean{ protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException { ... } } 在Spring中定义 <bean id="reportJob" class=&.springframework.scheduling.quartz.JobDetailBean"> <property name="jobClass"> <value>EmailReportJobvalue> property> <property name="jobDataAsMap"> <map> <entry key="courseService"> <ref bean="courseService"/> entry> map> property> bean> 在这里我们并没有直接声明一个EmailReportJob Bean,而是声明了一个JobDetailBean。

这个是Quartz的特点。

JobDetailBean是.quartz.JobDetail的子类,它要求通过jobClass属性来设置一个Job对象。

使用Quartz的JobDetail中的另一个特别之处是EmailReportJob的courseService属性是间接设置的。

JobDetail的jobDataAsMap属性接受一个Map,包括设置给jobClass的各种属性,当。

JobDetailBean实例化时,它会将courseService Bean注入到EmailReportJob 的courseService 属性中。

启动定时器 .quartz.Trigger类描述了何时及以怎样的频度运行一个Quartz工作。

Spring提供了两个触发器SimpleTriggerBean和CronTriggerBean。

SimpleTriggerBean与scheduledTimerTasks类似。

指定工作的执行频度,模仿scheduledTimerTasks配置 . <bean id="simpleReportTrigger" class=&.springframework.scheduling.quartz.SimpleTriggerBean"> <property name="jobDetail" ref="reprotJob" /> <property name="startDelay"> <value>360000value> property> <property name="repeatInterval"> <value>86400000value> property> bean> startDelay也是延迟1个小时启动 CronTriggerBean指定工作的准确运行时间 <bean id="cronReportTrigger" class=&.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail" ref="reprotJob" /> <property name="cronExpression"> <value>0 0 6 * * ?value> property> bean> 属性cronExpression告诉何时触发。

最神秘就是cron表达式: Linux系统的计划任务通常有cron来承担。

一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素。

从左到右: 1.秒2.分3.小时4.月份中的日期(1-31)5.月份(1-12或JAN-DEC)6.星期中的日期(1-7或SUN-SAT)7.年份(1970-2099) 每个元素都显示的规定一个值(如6),一个区间(9-12),一个列表(9,11,13)或一个通配符(*)。

因为4和6这两个元素是互斥的,因此应该通过设置一个问号(?)来表明不想设置的那个字段,“/”如果值组合就表示重复次数(10/6表示每10秒重复6次)。

启动定时器 <bean class=&.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list><ref bean="cronReportTrigger"/>list> property> bean> triggers属性接受一组触发器。

请教,spring3.2+quartz2.1.6报如下错误如何解决

Spring官网有说明其已支持Quartz 2.x,但是需要将Spring升级到3.1以上。

由于Quartz 2.x修改了部分API,所以需要修改一下Quartz的配置。

大体来说很简单,如下: 1)升级Spring的jar包 2)升级Quartz的jar包 3)修改配置 将CronTriggerBean修改为CronTriggerFactoryBean 将JobDetailBean修改为JobDetailFactoryBean

Quartz时间表达式

使用SimpleTrigger 这个类,其中setStartTime()为设置开始时间,setEndTime()为设置结束时间,setRepeatlnterval()为每次的间隔时间,单位时毫秒,setRepeatCount()为循环的次数

webhosting24:€28/年,日本NVMe3900X+Webvps

webhosting24决定从7月1日开始对日本机房的VPS进行NVMe和流量大升级,几乎是翻倍了硬盘和流量,当然前提是价格依旧不变。目前来看,国内过去走的是NTT直连,服务器托管机房应该是CDN77*(也就是datapacket.com),加上高性能平台(AMD Ryzen 9 3900X+NVMe),这样的日本VPS还是有相当大的性价比的。官方网站:https://www.webhosting...

2022年腾讯云新春采购季代金券提前领 领取满减优惠券和域名优惠

2022年春节假期陆续结束,根据惯例在春节之后各大云服务商会继续开始一年的促销活动。今年二月中旬会开启新春采购季的活动,我们已经看到腾讯云商家在春节期间已经有预告活动。当时已经看到有抢先优惠促销活动,目前我们企业和个人可以领取腾讯云代金券满减活动,以及企业用户可以领取域名优惠低至.COM域名1元。 直达链接 - 腾讯云新春采购活动抢先看活动时间:2022年1月20日至2022年2月15日我们可以在...

GigsGigsCloud(年付26美元)国际线路美国VPS主机

已经有一段时间没有听到Gigsgigscloud服务商的信息,这不今天看到商家有新增一款国际版线路的美国VPS主机,年付也是比较便宜的只需要26美元。线路上是接入Cogentco、NTT、AN2YIX以及其他亚洲Peering。这款方案的VPS主机默认的配置是1Gbps带宽,比较神奇的需要等待手工人工开通激活,不是立即开通的。我们看看这款服务器在哪里选择看到套餐。内存CPUSSD流量价格购买地址1...

crontriggerbean为你推荐
mp4格式mp4格式有哪些?草莓派如何最简单的制作出好吃的草莓派?y码亚洲码男女尺码是多少?视频技术怎么做视频?华为总裁女儿为啥姓孟任正非女儿为什么姓孟?天翼校园宽带校园天翼宽带是什么上网类型云盘网谁知道免费的网盘?微信智能机器人有一个人加我微信,他说他自己是图灵机器人,我想问一下这是啥软件怎么可以自动回复微信?kjavaJava与KJava有什么区别吗.?activitygroupAndroid中如何在ActivityGroup里面监听back按钮,使得可按要求实现哪个activity可返回,哪个不需要。。
域名注册中心 视频空间租用 3322免费域名 enom 10t等于多少g 域名优惠码 网站实时监控 云图标 国外免费空间 web服务器架设软件 太原联通测速平台 hostker hdd 360云服务 东莞idc starry 万网注册 512内存 建站技术 forwarder 更多