Quartz的XML调用模式

Spring:xml 配置 Spring xml配置介绍 阅读详情

      ☆Quartz可以通过XML来配置定时服务,简单笔记如下:

      ☆定义一个处理业务逻辑的Class[继承Job],例如

package mypackage;

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

public class DeleteFileJob implements Job {
    
public void execute(JobExecutionContext context)
            
throws JobExecutionException {
        System.out.println(
"delete File!");
    }
}


      ☆配置Job[在conf目录下新建jobs.xml][每两秒执行一次DeleteFileJob]

<?xml version='1.0' encoding='utf-8'?>
<quartz xmlns="http://www.opensymphony.com/quartz/JobSchedulingData"
    xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation
="http://www.opensymphony.com/quartz/JobSchedulingData
  http://www.opensymphony.com/quartz/xml/job_scheduling_data_1_5.xsd"

    version
="1.5">
    
<job>
        
<job-detail>
            
<name>deleteFileJob</name>
            
<group>dailyJob</group>
            
<description>deleteFileJob</description>
            
<job-class>mypackage.DeleteFileJob</job-class>
            
<volatility>false</volatility>
            
<durability>false</durability>
            
<recover>false</recover>
        
</job-detail>
        
<trigger>
            
<cron>
                
<name>dailyTrigger</name>
                
<group>dailyTrigger</group>
                
<description>dailyTrigger</description>
                
<job-name>deleteFileJob</job-name>
                
<job-group>dailyJob</job-group>
                
<cron-expression>0/2 * * * * ?</cron-expression>
            
</cron>
        
</trigger>
    
</job>
</quartz>


      ☆配置Quartz[在conf目录下新建quartz.properties] 
     [简单说明:线程数量=一个(org.quartz.threadPool.threadCount=1),
              线程优先级=普通(org.quartz.threadPool.threadPriority=5),
              使用JobInitializationPlugin插件(org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin),
              Job的配置文件(org.quartz.plugin.jobInitializer.fileNames= conf/jobs.xml)]


#============================================================================
# Configure Main Scheduler Properties  
#============================================================================

org.quartz.scheduler.instanceName = MyScheduler
org.quartz.scheduler.instanceId = AUTO

#============================================================================
# Configure ThreadPool  
#============================================================================

org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 1
org.quartz.threadPool.threadPriority = 5

#============================================================================
# Configure JobStore  
#============================================================================

org.quartz.jobStore.misfireThreshold = 60000

#============================================================================
# Configure Plugins 
#============================================================================

org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingJobHistoryPlugin

org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin
org.quartz.plugin.jobInitializer.fileNames = conf/jobs.xml
org.quartz.plugin.jobInitializer.overWriteExistingJobs = true
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.jobInitializer.scanInterval = 10
org.quartz.plugin.jobInitializer.wrapInUserTransaction = false


      ☆启动Quartz[新建一个Class,在Main中写入下列代码][执行可以看结果]

public static void main(String[] args) throws Exception {
        System.out.println(
"start");
        System.getProperties().put(
"org.quartz.properties","conf/quartz.properties");
        StdSchedulerFactory.getDefaultScheduler().start();
        System.out.println(
"end");
    }


      ☆配置中cron-expression说明[网摘]
  同样的,像SimpleTrigger一样,CroTrigger有一个startTime(启始时间)来记载下线程开始启动的时间,和endTime(结束时间)<非必须设定>来记载线程不继续执行的时间点。

  Cron
-Expressions是用来设定CronTrigger的实例,而Cron-Expressions一串字符串的表达式,而实际上是由七个sub-expressions(子式)所组成,来描述线程的个别细节部分。而这些sub-expression(子式)是用空白来区隔,并呈现顺序和意思如下:

    
"秒(Seconds) 分(Minutes) 小时(Hours) 天(Day-of-Month) 月份(Month) 星期(Day-of-Week) 年(Year)<非必须描述>" 
  举例来说,一个完整的cron
-expression字符串"0 0 12 ? * WED"的意思是"每个星期三的中午十二点"。
  个别的sub
-expression可以包含了范围和/或列举的方式描述,如上行举例的星期这个字段("WED"),我们可以置换为"FRI"、"MON,WED,FRI"、甚至于"MON-WED,SAT"来表示。

  星号(就是
*这个)就是在那个字段是任意值的意思,以先前的为例,在月份这栏用星号表示每一个月份的意思阿,而如果把星号放到星期这栏,就表示这星期的每一天。

  每一个字段都有一组数值来明确的说明,而这些数值就要正确的使用,如秒和分的字段就是数字0到59、时的字段就是数字0到23,日期可以0到31之间的任何数字,但必须注意的是你所选的月份有几天阿。月份的可以指定0到11的数值,也可以用字符串JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV 和 DEC来表示。

  星期字段可以填入的值有1到7(1表示星期日),或者使用字符串SUN, MON, TUE, WED, THU, FRI 和 SAT。

  左斜线(就是
/这个)表示一个数值的增加,如你用"0/15"来表示分的字段,这意思是"开始于整点零分,每隔15分钟";如果在分字段用"3/20"表示"开始于第三分钟,每隔20分钟",而这意思等同"3,23,43"的表示意思。

  问号(就是
?这个)是允许使用在天和星期上的字段,而这表示"没有特定值",这特别有用在于要设定其中一个字段,但与另一个字段无关时。下面会举例,或者看CronTrigger JavaDOC有明确的说明。

  L字母允许使用在天和日期上的字段,这个字母L是
"last"的缩写,但在放在这两个字段有个别不同的意思,如L字母放在天的字段,表示这个月的最后一天,一月的最后一天是31号,二月的最后一天是28号(非润年)。如果把L字母放到星期字段的话只是单纯的表示"7"或"SAT"星期六而已。但是如果把L字母接在星期字段原来值的后面,这就表示"这个月的最后星期几",举例"6L"或"FRIL"都是表示这个月的最后一个星期五。所以呢,当使用L这个字母时,很重要的一点,就是不可以跟列举或范围的值放在一起,不然你会搞不清楚结果。

  W子母表示所选取最接近非假日的平常日(星期一到星期五)的日子,如
"15W"的表示放在天字段的话,这表示"这月份的第15天最接近平常日的日子"。

  井号(就是#这个)表示这个月第几个星期几的平常日,如
"6#3"或者"FRI#3"在星期的字段,表示"这个月的第三个星期五"。
quartzJob和xml的配置情况 quartz Job的jar和一些相关配置使用 立即下载

相关推荐

spring quartz通过xml配置实现定时任务demo

定时任务demo,Java语言,spring整合quartz配置文件实现定时任务

使用spring+quartz配置多个定时任务

Spring被用在了越来越多的项目中, quartz也被公认为是比较好用的定时器设置工具, 在这里通过一个demo说明如何使用spring和quartz配置多个定时任务. 环境: eclipse + maven + spring 3.0.6.RELEASE版本 + quartz 1.8.6版本

pansanday的专栏 1万+

基于Openrouter的API调用免费大模型

Openrouter 是一个 AI 模型聚合平台,整合了全球 200 多种主流 AI 模型,包括 GPT-4、Claude、Gemini 等,以及国产通义千问、DeepSeek 等。其核心优势是统一的 API 设计,开发者仅需少量代码即可与多个模型交互,还支持自动路由与回退机制。用户可通过 OpenAI SDK 或 LangChain 调用 Openrouter 中的模型。

MurphyStar的博客 6208

Quartz两个定时任务的配置

1、首先与spring进行整合,需要在spring的总配置中或者在web.xml中spring监听中加上 applicationContext-quartz.xml。 我是直接加了个xml文件。 注:根据自己的业务需要,设置定时器配置。 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi

weixin_38502935的博客 1174

NFS服务器配置与autofs自动挂载

NFS服务器配置autofs自动挂载 环境: hostname ip OS server 192.168.220.138 centos7 client 192.168.220.139 centos7 一、NFS概述 NFS(Network File System)网络文件系统。最大功能就是通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。 二、端口 [root@se...

DoloresOOO的博客 1028

Keil 5安装教程(C51与MDK共存)

目录前言MDK的安装C51的安装安装完成后的验证新建C51工程添加C51程序文件编译测试总结 前言 本篇文章将介绍嵌入式开发工具Keil 5的安装方法,并使MDK(Microcontroller Development Kit,开发stm32时会用到)和C51(51单片机C语言软件开发系统)共存。今后使用Keil 5可同时开发51单片机程序和ARM单片机程序,便于学习与从51到32的过渡。 注: 为防止商业纠纷,本篇文章不涉及文中软件的注册破解,请支持正版。 同时为了便于今后更深入的学习,本文不会介绍软件的

xushu_me的博客 6万+

如何使用quartz-scheduler使用多个cron-triggers启动Job?

quartz 一个任务设置多个cron表达式

qq_34690003的博客 577

保姆级教程:用AD20破解版从安装到汉化,一次搞定PCB设计环境搭建

本文提供AD20从安装到汉化的保姆级教程,详细解析环境配置、核心功能及高效操作技巧,帮助电子设计工程师快速掌握PCB设计工具。涵盖系统准备、界面定制、原理图设计、PCB布局布线等关键步骤,特别适合初学者避开常见陷阱。

weixin_30555125的博客 220

Quartz(三) xml配置quartz

quartz的简单配置使用,通过xml配置文件实现quartz的功能。创建一个maven工程,配置好基础的运行准备。 1、配置simpleTrigger规则   新建java类MyBean,如下package com.lzt.XmlTest; import java.text.SimpleDateFormat; import java.util.Date; import org.sprin

小错的博客 1791

疲劳容器的定义_FKM规范针对非焊接构件疲劳强度评估实例介绍(下篇)

一、写在前面FKM Inside ANSYS软件,该软件是在FKM 规范的基础上,在ANSYS Workbench内开发的进行非焊接构件及焊缝静强度和疲劳强度评估的工具包。基于ANSYS计算模型的信息,在图形用户界面定义相关设置,利用有限元分析计算结果,自动嵌入FKM规范要求的静强度计算和疲劳强度计算流程和方法,自动将应力结果和相关物理量传递给工具包,无须手动预先选择评估的热点区域,可以...

weixin_35925298的博客 1885

群晖NAS安装HomeAssistant保姆级教程:从Docker部署到智能设备接入

本文提供了一份详尽的群晖NAS安装HomeAssistant保姆级教程,涵盖从Docker部署到智能设备接入的全过程。通过规划存储路径、配置容器环境变量和网络模式,确保系统稳定运行。教程还介绍了如何接入小米、苹果HomeKit等智能家居设备,并利用自动化与仪表盘打造本地化、高响应速度的智能中枢,实现数据隐私与远程控制的完美平衡。

play7的博客 697

Quartz作业调度框架--XML配置

Quartz作业调度框架  --XML配置   applicationContext.xml 配置:     &lt;!-- 定时服务配置开始 --&gt; &lt;import resource="classpath:/config/spring/quartz_jobs.xml"/&gt;     quartz_jobs.xml配置:   &lt;?xml version=...

june696295的专栏 205

避坑指南:在Linux服务器上用Conda安装antiSMASH 5.2.0(解决Jinja2报错和Matplotlib权限问题)

本文详细介绍了在Linux服务器上使用Conda安装antiSMASH 5.2.0的避坑指南,重点解决了Jinja2报错和Matplotlib权限问题。通过创建专用conda环境、安装指定版本依赖包和配置缓存目录,帮助用户顺利完成antiSMASH的本地部署,适用于批量处理基因组分析任务。

weixin_26911099的博客 317

Spring+Quartz的版本报错问题

使用Spring配置管理Quartz的时候会遇到下面的异常:Caused by: java.lang.IncompatibleClassChangeError: class org.springframework.scheduling.quartz.CronTriggerBean has interface org.quartz.CronTrigger as super class  

菜鸟小木干的博客 819

Android 9.0 延时开机动画解决首次开机黑屏和去掉android正在启动的提示框

在9.0的系统产品rom定制化开发中,在一些产品中会出现在首次开机的时候,由于在开机动画播放完以后会出现几秒短暂的黑屏情况,然后进入默认Launcher,这在产品体验上 也是感觉到有点差,所以会要求在去掉这个首次开机黑屏的效果,和在启动过程中的 android is starting这个提示框的这些效果优化,接下来就分析下相关功能, 然后实现这个功能的开发

安卓兼职framework和app工程师的博客 3246

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Quartz的具体实现

既然你翻到了我这的博客,说明你起码应该对quartz是什么有一个大致的了解了,介绍免了,直接上操作。五步走1、创建调度工厂(); //工厂模式2、根据工厂取得调度器实例(); //工厂模式3、Builder模式构建子组件基础版public class Job implements org.quartz.Job{ @Override public void execute(Job

tallon的博客 476

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

定时器第二集

前天的时候写了定时器监控网站的文章,当时理解的是找台机器放上去把main运行了就OK了,谁知领导说你做一个能挂服务器上的,到时候做个webservice接口,调用短信平台,如果网站无法登陆就直接发短信给用户。 于是就有了下面的东西: 先说jar包:spring.jar,quartz-all-1.8.5.jar,log4j-1.2.15.jar,axis.jar 先导包, 然后建立pack...

懒得不想说话 117

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

定时任务之Quartz

Quartz 的设计核心在于将“做什么(Job)”与“何时做(Trigger)”解耦,并通过“调度器(Scheduler)”进行管理。注意:使用数据库模式前,需确保数据库中已存在 Quartz 所需的 11 张表(如。如果不配置任何 Quartz 属性,Spring Boot 默认使用内存存储。在实际生产中,往往需要通过接口动态添加、修改或删除任务。starter,极大地简化了配置过程。场景 A:内存模式(默认,无需额外配置)Spring Boot 提供了。场景 B:数据库持久化与集群模式。

Listen·Rain的博客 1566

springboot结合quartz框架完成定时任务开发(注解+xml)

文章目录Quartz简介核心组件创作初衷配置类注解开发导入坐标第一个定时任务XML配置文件开发boot主类job类重头戏:applicationContext-quartz.xml配置文件编写 Quartz简介 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java组件或 EJBs。 核心组件

Hubuers的博客 2312

定时任务:Quartz 详解

Quartz 就是 Java 定时任务 领域一个非常优秀的框架

厚积薄发 6817

Quartz-Spring集成Quartz通过XML配置的方式

目录 概述 Maven依赖 步骤 1 创建JobDteail 2 创建Trigger 3 创建Scheduler 示例-MethodInvokingJobDetailFactoryBean 示例-JobDetailFactoryBean 概述 Spring为创建Quartzde Scheduler、Trigger和JobDetail提供了方便的FactoryBean类,以便能够...

xuforeverlove的博客 1587

Quartz定时任务+Mysql(集群模式)

目录 一、基本概念 二、Mysql的表 三、maven依赖pom.xml文件 四、配置文件 quartz.properties application.yml 五、项目目录结构(代码) SchedulerConfiguration JobController  MyJobFactory AsyncJob CronJob JobService JobServiceImpl...

EndTheme_Xin的博客 3303

Quartz插件配置-005

插件配置 配置计划程序插件 像通过配置文件配置插件的Listeners一样,包括给出一个名称,然后指定类名称以及要在实例上设置的任何其他属性。该类必须有一个no-arg构造函数,并且属性被反射设置。只支持原始数据类型值(包括字符串)。 因此,定义插件的一般模式是: 配置插件 org.quartz.plugin.NAME.class = com.foo.MyPluginClass org...

小贺的博客 1234

在WEB中,Quartz使用配置文件调用

两个配置文件,一个properties和一个xmlproperties:#============================================================================# Configure Main Scheduler Properties #=======================================

哈哈__哈哈的专栏 5523

Spring+Quartz的版本问题

使用Spring配置管理Quartz的时候会遇到下面的异常: Caused by: java.lang.IncompatibleClassChangeError: class org.springframework.scheduling.quartz.CronTriggerBean has interface org.quartz.CronTrigger as super

残缺的歌的专栏 854

Spring中Quartz的配置

Quartz是一个强大的企业级任务调度框架,Spring中继承并简化了Quartz,下面就看看在Spring中怎样配置Quartz: spring.xml 配置 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmln

软件的世界 780
上一篇: Quartz 两种实现方式
下一篇: eclipse,idea 安装第三方jar到本地仓库
zljjava
博客等级 码龄15年 155粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值