+
 新版

在spring quartz的项目中,怎么让任务只执行一次?

pnwazgx 发布于 2016/04/11 22:36
阅读 10K+
收藏 0

如何在spring quartz的项目中,将job任务加入到任务队列中,在指定时间执行一次就从执行队列中移除?

加载中
0
klaus_
klaus_
你把表达式设置成某天某月某日某时某分就好喽。
pnwazgx
pnwazgx
这个不妥。这个还是在内存中等待着下次去执行。只是时间比较久而已
0
吾同树
吾同树
不明白你是什么需求,既然你又不想设置成具体的时间点执行,那用servlet或spring bean初始化指定init方法的方式也可以
吾同树
吾同树
那就按楼上说的设置具体时间点就是呀,这个没什么不妥吧,肯定是要在内存中等着
pnwazgx
pnwazgx
比如有这个需求:用户想指定在今天的12:30发送一条提醒消息,这种任务只需要执行一次。
0
王涛
王涛
<bean id="doVerify" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail">
			<ref bean="verifyTask" />
		</property>
		<!-- cron表达式 -->
		<property name="cronExpression">
			<value>0 0 23 * * ?</value><!-- 这里是定时发送,每天就一次,23代表是23点 -->
<!-- 			<value>0 0/3 * * * ?</value> --><!-- 这里是间隔发送 ,0/3表示每隔3分钟发送 -->
		</property>
	</bean>



0
Ken5233
Ken5233
quartz支持动态job添加
0
osc_85296427
osc_85296427

" 用户想指定在今天的12:30发送一条提醒消息,这种任务只需要执行一次。 "

比如:2021年8月19日的12:30,那么,配置cront为:"  0 30 12 19 8 ? 2021" ,这样就只会执行一次。

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部