quartz

InitializingBean的作用

别说谁变了你拦得住时间么 提交于 2019-12-03 04:56:40
最近工作需要得到sping中的每个事物需要执行的sql,称机会简单研究了一下spring的事务,项目中管理事务比较简单,用TransactionTemplate,就直接以TransactionTemplate为入口开始学习。 TransactionTemplate的源码如下: public class TransactionTemplate extends DefaultTransactionDefinition implements TransactionOperations, InitializingBean{ . } TransactionTemplate继承了DefaultTransactionDefinition,实现了TransactionOperations,InitializingBean接口。先研究InitializingBean接口 InitializingBean接口为bean提供了初始化方法的方式,它只包括afterPropertiesSet方法,凡是继承该接口的类,在初始化bean的时候会执行该方法。 测试程序如下: import org.springframework.beans.factory.InitializingBean; public class TestInitializingBean implements InitializingBean{

Java Quartz Memory leak message

匿名 (未验证) 提交于 2019-12-03 03:12:02
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: i have an quartz job in my web-application, which is started by an servlet. When i redeploy my application i get following message [DefaultQuartzScheduler_Worker-5] but has failed to stop it. This is very likely to create a memory leak Also in production we have the problem that the tomcat-server doesn't stop after ./shutdown.sh, so that we have to kill the process. In my opinion it depence on the quartz job, that can't stop. How can i stop the quartz job by redeploy my application or shutdown the server? I use tomcat 7, quartz 2.1.6 ...

Spring Scheduling: @Scheduled vs Quartz

匿名 (未验证) 提交于 2019-12-03 02:45:02
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I'm reading the Spring 3.0 doc s regarding scheduling. I'm leaning towards Spring's JobDetailBean for Quartz. However, the @Scheduled annotation has captured my eye. It appears this is another way of scheduling task using the Spring Framework. Based on the docs, Spring provides three way of scheduling: @Scheduled Via Quartz Via JDK Timer I have no interest in the JDK Timer. Why should I choose @Scheduled over Quartz? (When I mention Quartz I mean using Spring's bean wrapper for Quartz). Let's say my use case is complex enough that I will be

Simple example for Quartz 2.2 and Tomcat 7

匿名 (未验证) 提交于 2019-12-03 02:43:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I want to create a scheduler with Quartz 2.2 in java dynamic web application. I am new to this task. I tried all the tutorials around the web. I trying context listener method to initialize the scheduler. It doesn't seem like working. The hello world program only works in general java application. for web application its looks tricky. pom.xml: 4.0.0 test.ananth test-app war 1.0-SNAPSHOT test-app Maven Webapp http://maven.apache.org org.quartz-scheduler quartz 2.2.1 org.apache.tomcat servlet-api 6.0.30 log4j log4j 1.2.16 org.quartz-scheduler

Spring Boot TImer Schedule Quartz

两盒软妹~` 提交于 2019-12-03 02:25:12
Spring Boot 2.X(十二):定时任务-云栖社区-阿里云 https://yq.aliyun.com/articles/723876?spm=a2c4e.11155472.0.0.2f8b3abfJhHnHX Java之美[从菜鸟到高手演变]之Spring中Quartz调度器的使用 - 智慧演绎,无处不在 - CSDN博客 https://blog.csdn.net/zhangerqing/article/details/41812101 Quartz-job的quartz.properties配置文件说明 - sanfye的专栏 - CSDN博客 https://blog.csdn.net/sanfye/article/details/49204307 来源: https://www.cnblogs.com/rgqancy/p/11771396.html

Quartz.net scheduler doesn't fire jobs/triggers once deployed

匿名 (未验证) 提交于 2019-12-03 02:13:02
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: INTRODUCTION I'm using Quartz.Net on an ASP.Net framework 4, webforms web site. Basically, the user should have the hability to fire manually a batch script that asynchronously processes thousands of records stored on a database. The user can stop or pause at any time, adjust some variables, and continue if needed with the process (remaining records). The code is done and working locally (developer machine, win7, vs2010, sql server express 2008 R2). It was also tested on a local server (win server 2008 R2, sql server express 2008 R2). It

Quartz教程八--SchedulerListener

∥☆過路亽.° 提交于 2019-12-03 02:07:29
SchedulerListener与TriggerListener、JobListener类似,但它仅接收来自Scheduler自身的消息,而不一定是某个具体的trigger或job的消息。 scheduler相关的消息包括:job/trigger的增加、job/trigger的删除、scheduler内部发生的严重错误以及scheduler关闭的消息等; org.quartz.SchedulerListener接口: public interface SchedulerListener { public void jobScheduled(Trigger trigger); public void jobUnscheduled(String triggerName, String triggerGroup); public void triggerFinalized(Trigger trigger); public void triggersPaused(String triggerName, String triggerGroup); public void triggersResumed(String triggerName, String triggerGroup); public void jobsPaused(String jobName, String

Quartz教程五--SimpleTrigger

眉间皱痕 提交于 2019-12-03 02:05:56
SimpleTrigger 可以满足的调度需求是:在具体的时间点执行一次,或者在具体的时间点执行,并且以指定的间隔重复执行若干次。比如,你有一个trigger,你可以设置它在2015年1月13日的上午11:23:54准时触发,或者在这个时间点触发,并且每隔2秒触发一次,一共重复5次。 根据描述,你可能已经发现了, SimpleTrigger 的属性包括:开始时间、结束时间、重复次数以及重复的间隔。这些属性的含义与你所期望的是一致的,只是关于结束时间有一些地方需要注意。 重复次数,可以是0、正整数,以及常量 SimpleTrigger.REPEAT_INDEFINITELY 。重复的间隔,必须是0,或者long型的正数,表示毫秒。注意,如果重复间隔为0,trigger将会以重复次数并发执行(或者以scheduler可以处理的近似并发数)。 如果你还不熟悉 DateBuilder ,了解后你会发现使用它可以非常方便地构造基于开始时间(或终止时间)的调度策略。 endTime属性的值会覆盖设置重复次数的属性值;比如,你可以创建一个trigger,在终止时间之前每隔10秒执行一次,你不需要去计算在开始时间和终止时间之间的重复次数,只需要设置终止时间并将重复次数设置为 REPEAT_INDEFINITELY (当然,你也可以将重复次数设置为一个很大的值

Quartz教程二--API、Job与Trigger

ε祈祈猫儿з 提交于 2019-12-03 02:05:47
Quartz API Quartz API核心接口有: Scheduler - 与scheduler交互的主要API; Job - 你通过scheduler执行任务,你的任务类需要实现的接口; JobDetail - 定义Job的实例; Trigger - 触发Job的执行; JobBuilder - 定义和创建JobDetail实例的接口; TriggerBuilder - 定义和创建Trigger实例的接口; Scheduler的生命期,从SchedulerFactory创建它时开始,到Scheduler调用shutdown()方法时结束;Scheduler被创建后,可以增加、删除和列举Job和Trigger,以及执行其它与调度相关的操作(如暂停Trigger)。但是,Scheduler只有在调用start()方法后,才会真正地触发trigger(即执行job),见 教程一 。 Quartz提供的“builder”类,可以认为是一种领域特定语言(DSL,Domain Specific Language)。教程一中有相关示例,这里是其中的代码片段: // define the job and tie it to our HelloJob class JobDetail job = newJob(HelloJob.class) .withIdentity("myJob",

作业调度框架 Quartz 学习笔记(二) -- 简单触发器(SimpleTrigger)

瘦欲@ 提交于 2019-12-03 02:05:34
简单回顾一下上一节学习到的 "HelloWorld " 1 创建一个job类,实现Job接口,覆盖 public void execute(JobExecutionContext context) 方法,在方法中写入你要执行的操作(数据导入/备份,轮询检查文件等)代码 2 创建一个主线程类, 获得 Scheduler 对象 SchedulerFactory sf = new StdSchedulerFactory(); Scheduler sched = sf.getScheduler(); 获得要执行的对象 JobDetail job = newJob(HelloJob.class).withIdentity("job1", "group1").build(); 定义触发器 Trigger trigger = newTrigger().withIdentity("trigger1", "group1").startAt(runTime).build(); 将任务和Trigger放入scheduler : sched.scheduleJob(job, trigger); 启动 和 停止 sched.start(); sched.shutdown(true); 注意 给job 留有足够长的时间,如果主线程类停止工作,job线程也会停止工作 ----------------------