日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

spring作业_Spring和石英:多作业计划服务

發布時間:2023/12/3 javascript 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 spring作业_Spring和石英:多作业计划服务 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

spring作業

作業調度對于應用程序來說是如此重要。 尤其是在大型項目中,處理大量工作可能是一個問題。 Spring和Quartz為解決該問題帶來了巨大的好處。 本文展示了如何通過使用Spring和Quartz輕松地計劃多個作業。

二手技術:

JDK 1.6.0_21
春天3.1.1
石英1.8.5 Maven的3.0.2

步驟1:建立已完成的專案
創建一個Maven項目,如下所示。 (可以使用Maven或IDE插件創建)

步驟2:圖書館
Spring依賴項已添加到Maven的pom.xml中。

<!-- Spring 3 dependencies --> <dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version> </dependency> <dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version> </dependency> <dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>${spring.version}</version> </dependency> <dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>${spring.version}</version> </dependency>

第3步:創建任務類別
將創建一個FirstTask類。

package com.otv.task;import org.apache.log4j.Logger;/*** First Task** @author onlinetechvision.com* @since 24 Feb 2012* @version 1.0.0**/ public class FirstTask {private static Logger log = Logger.getLogger(FirstTask.class);/*** Execute this task**/public void execute() {log.debug("FirstTask runs successfully...");} }

將創建SecondTask類。

package com.otv.task;import org.apache.log4j.Logger;/*** Second Task** @author onlinetechvision.com* @since 24 Feb 2012* @version 1.0.0**/ public class SecondTask {private static Logger log = Logger.getLogger(SecondTask.class);/*** Execute this task**/public void execute() {log.debug("SecondTask runs successfully...");} }

第4步:創建ISchedulerService接口
ISchedulerService接口已創建。

package com.otv.service;/*** Scheduler Service Interface** @author onlinetechvision.com* @since 24 Feb 2012* @version 1.0.0**/ public interface ISchedulerService {/*** Execute First Task** @param* @throws* @return*/public void executeFirstTask();/*** Execute Second Task** @param* @throws* @return*/public void executeSecondTask(); }

步驟5:創建SchedulerService類別
SchedulerService類是通過實現ISchedulerService接口創建的。 該服務計劃任務。

package com.otv.service;import com.otv.task.FirstTask; import com.otv.task.SecondTask;/*** Scheduler Service Implementation** @author onlinetechvision.com* @since 24 Feb 2012* @version 1.0.0**/ public class SchedulerService implements ISchedulerService {private FirstTask firstTask;private SecondTask secondTask;/*** Execute First Task**/public void executeFirstTask() {getFirstTask().execute();}/*** Execute Second Task**/public void executeSecondTask() {getSecondTask().execute();}/*** Get First Task** @return FirstTask*/public FirstTask getFirstTask() {return firstTask;}/*** Set First Task** @param firstTask First Task*/public void setFirstTask(FirstTask firstTask) {this.firstTask = firstTask;}/*** Get Second Task** @return SecondTask*/public SecondTask getSecondTask() {return secondTask;}/*** Set Second Task** @param secondTask Second Task*/public void setSecondTask(SecondTask secondTask) {this.secondTask = secondTask;} }

步驟6:建立應用程式類別
應用程序類已創建。 此類運行應用程序。

package com.otv.starter;import org.springframework.context.support.ClassPathXmlApplicationContext;/*** Application Starter Class** @author onlinetechvision.com* @since 24 Feb 2012* @version 1.0.0**/ public class Application {/*** Main method of the Application**/public static void main(String[] args) {new ClassPathXmlApplicationContext("applicationContext.xml");} }

第7步:定義作業詳細信息配置
在Spring中,可以通過兩種方式定義作業詳細信息 。 通過使用MethodInvokingJobDetailFactoryBean或擴展QuartzJobBean 。 在此示例中,已使用MethodInvokingJobDetailFactoryBean方法。 將targetObjecttargetMethod屬性提供給MethodInvokingJobDetailFactoryBean

<!-- Job Details--> <bean id="FirstTaskJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"><property name="targetObject" ref="SchedulerService" /><property name="targetMethod" value="executeFirstTask" /> </bean><bean id="SecondTaskJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"><property name="targetObject" ref="SchedulerService" /><property name="targetMethod" value="executeSecondTask" /> </bean>

步驟8:定義觸發配置
在Spring中也可以通過兩種方式定義觸發器 。 通過定義SimpleTriggerBeanCronTriggerBean 。 使用SimpleTriggerBean時 ,將定義jobDetailrepeatIntervalstartDelay屬性。 使用CronTriggerBean時 ,將定義jobDetailcronExpression屬性。 在此示例中,第一個任務的重復間隔已設置為5秒 ,第二個任務的重復間隔已設置為12秒

<!-- Simple Trigger --> <bean id="FirstSimpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean"><property name="jobDetail" ref="FirstTaskJobDetail" /><property name="repeatInterval" value="5000" /><property name="startDelay" value="1000" /> </bean><!-- <bean id="SecondSimpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean"><property name="jobDetail" ref="SecondTaskJobDetail" /><property name="repeatInterval" value="12000" /><property name="startDelay" value="1000" /></bean> -->???<!-- Cron Trigger --> <bean id="SecondSimpleTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"><property name="jobDetail" ref="SecondTaskJobDetail" /><property name="cronExpression" value="0/12 * * * * ?" /> </bean>

步驟9:定義SchedulerFactoryBean配置
最后,通過創建SchedulerFactoryBean配置作業詳細信息觸發器

<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"><property name="jobDetails"><list><ref bean="FirstTaskJobDetail" /><ref bean="SecondTaskJobDetail" /></list></property><property name="triggers"><list><ref bean="FirstSimpleTrigger" /><ref bean="SecondSimpleTrigger" /></list></property> </bean>

步驟10:創建applicationContext.xml
所有applicationContext.xml內容如下所示。

<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd"><!-- Beans Declaration --><bean id="FirstTask" class="com.otv.task.FirstTask"></bean><bean id="SecondTask" class="com.otv.task.SecondTask"></bean><bean id="SchedulerService" class="com.otv.service.SchedulerService"><property name="firstTask" ref="FirstTask" /><property name="secondTask" ref="SecondTask" /></bean><!-- Job Details--><bean id="FirstTaskJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"><property name="targetObject" ref="SchedulerService" /><property name="targetMethod" value="executeFirstTask" /></bean><bean id="SecondTaskJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"><property name="targetObject" ref="SchedulerService" /><property name="targetMethod" value="executeSecondTask" /></bean><!-- Simple Trigger --><bean id="FirstSimpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean"><property name="jobDetail" ref="FirstTaskJobDetail" /><property name="repeatInterval" value="5000" /><property name="startDelay" value="1000" /></bean> <!--<bean id="SecondSimpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean"><property name="jobDetail" ref="SecondTaskJobDetail" /><property name="repeatInterval" value="12000" /><property name="startDelay" value="1000" /></bean> --><!-- Cron Trigger --><bean id="SecondSimpleTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"><property name="jobDetail" ref="SecondTaskJobDetail" /><property name="cronExpression" value="0/12 * * * * ?" /></bean><bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"><property name="jobDetails"><list><ref bean="FirstTaskJobDetail" /><ref bean="SecondTaskJobDetail" /></list></property><property name="triggers"><list><ref bean="FirstSimpleTrigger" /><ref bean="SecondSimpleTrigger" /></list></property></bean></beans>

步驟11:運行項目
啟動應用程序類后,將在下面顯示輸出日志:

25.02.2012 00:17:18 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:17:23 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:17:24 DEBUG (SecondTask.java:22) - SecondTask runs successfully... 25.02.2012 00:17:28 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:17:33 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:17:36 DEBUG (SecondTask.java:22) - SecondTask runs successfully... 25.02.2012 00:17:38 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:17:43 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:17:48 DEBUG (SecondTask.java:22) - SecondTask runs successfully... 25.02.2012 00:17:48 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:17:53 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:17:58 DEBUG (FirstTask.java:23) - FirstTask runs successfully... 25.02.2012 00:18:00 DEBUG (SecondTask.java:22) - SecondTask runs successfully...

步驟12:下載

OTV_SpringQuartz_MultiJobScheduling

參考: JCG合作伙伴 使用Spring和Quartz進行的多作業計劃服務 ? 在線技術愿景博客的Eren Avsarogullari。


翻譯自: https://www.javacodegeeks.com/2012/02/spring-and-quartz-multi-job-scheduling.html

spring作業

總結

以上是生活随笔為你收集整理的spring作业_Spring和石英:多作业计划服务的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: av色噜噜| 国产精品高潮呻吟久久aⅴ码 | 激情综合区 | 后宫秀女调教(高h,np) | 国产精品丝袜黑色高跟鞋的设计特点 | 国产一区不卡在线 | 青青视频网站 | 麻豆一级片 | 亚洲无套 | 婷婷激情综合 | jlzzjlzzjlzz亚洲人| 亚洲成人精品一区二区三区 | 先锋影音一区二区 | www成人在线观看 | 国产欧美日韩视频在线观看 | 无码人妻aⅴ一区二区三区69岛 | 无码丰满熟妇 | 老色批永久免费网站www | 国产午夜无码视频在线观看 | 波多野结衣一级 | 大桥未久av在线 | 超碰精品在线观看 | 毛片一区 | 女人性高潮视频 | 日本丰满少妇做爰爽爽 | 精品一区二区三区久久久 | 国产私密视频 | 亚洲视频欧美视频 | 国内精品亚洲 | 蜜臀视频在线播放 | 91传媒网站 | 国产一级免费在线观看 | 久久亚洲私人国产精品va | 91蜜桃传媒精品久久久一区二区 | 日本91在线 | 香蕉视频国产在线观看 | 娇小激情hdxxxx学生 | 欧美极品jizzhd欧美爆 | 激情丁香六月 | 青青草国产在线观看 | 国内视频自拍 | 啪啪影音| 国产18一19sex性护士 | 一级黄色大片视频 | 免费播放av | 久久久久毛片 | 今天最新中文字幕mv高清 | 国产成人精品一区二区三区在线观看 | 亚洲无线看 | av一卡 | 在线成人中文字幕 | www久久com| 老师的肉丝玉足夹茎 | 波多野结衣一级 | 蜜桃视频日韩 | 亚洲三区在线播放 | 麻豆久久久午夜一区二区 | 免费二区 | 午夜福利视频一区二区 | 一区二区三区日韩精品 | 91在线在线 | 看国产毛片 | 少妇高潮毛片色欲ava片 | 免费国产黄色片 | 国产剧情一区二区 | 久久综合加勒比 | 欧美一区自拍 | 国产精品久久久无码一区 | 日本国产一区二区 | 亚欧中文字幕 | 午夜精品一区二区三区在线 | 国产免费a级片 | 日本xxxxxxxxx | 伊人网视频在线观看 | 黄色激情在线 | 亚洲欧美日韩偷拍 | 国产激情无套内精对白视频 | 欧美熟妇毛茸茸 | 中文字幕高清在线免费播放 | 狠狠亚洲| 超碰下载页面 | 色婷婷久久综合中文久久蜜桃av | 波多野结衣a级片 | 日本一级免费视频 | 69黄色片 | 青青草91视频 | 日本在线播放 | ktv做爰视频一区二区 | 免费看日产一区二区三区 | 澳门超碰| 亚洲高清毛片一区二区 | 在线观看亚洲网站 | 黄色成年人视频 | 国产美女网站视频 | 娇妻玩4p被三个男人伺候电影 | 国产成人在线精品 | 五色天婷婷 | 国产情趣视频 | 国产精品三级在线 |