一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - spring利用squertz實現定時任務

spring利用squertz實現定時任務

2020-07-30 16:12WhyWin Java教程

spring squertz是一個強大的定時任務處理方式。下面這篇文章主要介紹了spring利用squertz實現定時任務的相關資料,文中介紹的很詳細,對大家具有一定的參考借鑒價值,需要的朋友們下面來一起看看吧。

前言

說起定時任務,開發的小伙伴們肯定不陌生了。有些事總是需要計算機去完成的,而不是傻傻的靠我們自己去??墒呛枚嗳藢Χ〞r器總感覺很陌生,今天小編就帶小伙伴們揭開它的神秘面紗,講解一下spring利用squertz實現定時任務。

一、需要的Jar

?
1
2
3
4
5
6
7
8
9
10
quartz-1.8.5.jar
commons-logging.jar
spring-core-3.0.5.RELEASE.jar
spring-beans-3.0.5.RELEASE.jar
spring-context-3.0.5.RELEASE.jar
spring-context-support-3.0.5.RELEASE.jar
spring-asm-3.0.5.RELEASE.jar
spring-expression-3.0.5.RELEASE.jar
spring.transaction-3.0.5.RELEASE.jar
spring-web-3.0.5.RELEASE.jar

二、配置文件

這里配置你要在什么時候執行你的定時任務,執行的是什么方法,如下面是在2016.11.10 23:00:00,執行com.seewoedu.train.quartz.GenerateRewardListTaskgenerate方法,這里使用cron指定了執行的時間,相關語法可查看http://m.ythuaji.com.cn/article/90148.html

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
 http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
 <!-- 啟動觸發器的配置開始 -->
 <bean name="startQuertz" lazy-init="false" autowire="no"
  class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
 <property name="triggers">
  <list>
  <ref bean="myJobTrigger" />
  </list>
 </property>
 </bean>
 <!-- 啟動觸發器的配置結束 -->
 
 <!-- quartz-2.x的配置 -->
 <bean id="myJobTrigger"
  class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
 <property name="jobDetail">
  <ref bean="myJobDetail" />
 </property>
 <property name="cronExpression">
  <!--<value>10 0/1 * * * ?</value>--> <!-- Cron表達式“10 */1 * * * ?”意為:從10秒開始,每1分鐘執行一次。 -->
  <value>0 0 9 10 12 ? 2016</value> <!-- Cron表達式“0 0 23 10 11 ? 2016”意為:只在2016.11.10 23:00:00 執行。 -->
 </property>
 </bean>
 <!-- 調度的配置結束 -->
 
 <!-- job的配置開始 -->
 <bean id="myJobDetail"
  class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
 <property name="targetObject">
  <ref bean="myJob" />
 </property>
 <property name="targetMethod">
  <value>generate</value>
 </property>
 </bean>
 <!-- job的配置結束 -->
 
 <!-- 工作的bean -->
 <bean id="myJob" class="com.seewoedu.train.quartz.GenerateRewardListTask" />
</beans>

三、被執行的方法

?
1
2
3
4
5
6
7
8
9
10
11
public class GenerateRewardListTask {
 @Autowired
 private GiftReceiveRecordService giftReceiveRecordService;
 
 org.slf4j.Logger logger = LoggerFactory.getLogger(GenerateRewardListTask.class);
 
 public void generate() throws Exception {
 giftReceiveRecordService.generateRewardMember(); //執行的方法
 
 }
}

四、需要注意的問題

      1、執行時間指定到年份時,會存在一個問題,就是在你在過了這個時間后再啟動項目的時候,他會一直報一個memory leak的錯誤,大概的意思是你的定時任務將永遠不會被執行,導致項目一直啟動不了。

      2、定時任務是通過你部署項目開始計算到你要執行定時任務的時間間隔,而不是實時獲取你服務器時間的方法實現的,所以通過修改服務器時間想測試定時任務是否生效是不可行的。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

原文鏈接:http://www.cnblogs.com/0201zcr/p/6099156.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产三级精品久久三级国专区 | 边摸边操 | 久久精品AV一区二区无码 | 国产精品美女福利视频免费专区 | 丁香六月色婷婷综合网 | 美国女艳星brandilove | 亚洲国产五月综合网 | 天堂伊人网 | 成人黄色免费网站 | 国产免费久久精品 | 羞羞视频动漫 | 热久久免费视频 | 耽美双性 | 亚洲国产经典 | 男人天堂黄色 | 亚洲国产精品嫩草影院久久 | 日本高清视频在线免费观看 | 桃乃木香奈作品在线 | 日韩一区二区三区在线 | 波多野结衣亚洲一区 | 亚洲国产精品婷婷久久久久 | 妹妹骑上来蹭着蹭着就射了 | 欧美二区三区 | 青青草原影院 | 成人人免费夜夜视频观看 | 99国产在线视频 | 禁忌高h| 日韩hd高清xxxⅹ | 美女用手扒开粉嫩的屁股 | 欧美男男xxx激情做受 | 99国产在线视频 | 国产免费看视频 | 成人永久免费视频 | 公园吃女人奶野战视频 | 99热国产这里只有精品99 | 国产成人精品免费久久久久 | 二次元美女脱裤子让男人桶爽 | 成人性爱视频在线观看 | 爽好舒服快想要免费看 | 18国产精品白浆在线观看免费 | 国产深夜视频 |