java quartz web.xml_quartz在web.xml的配置

第一步:下载所需的Jar包

commons-beanutils.ja、commons-collections.jar、commons-logging.jar、commons-digester.jar、quartz.jar包

第二步:在web.xml下配置监听

在web.xml下配置监听的目的是为了项目编译的时候就自动运行监听下配置的业务类。

com.qt.quartz.QuartzMain

第三步:编写com.qt.quartz.QuartzMain类

这个类只是作为启动类,调用QuartzLoad类的2个方法,因为这个类是静态的,所以可以用名称直接点出方法名称。

package com.qt.quartz;

import javax.servlet.ServletContextEvent;

import javax.servlet.ServletContextListener;

public class QuartzMain implements ServletContextListener {

// 服务器启动时执行该事件

@Override

public void contextInitialized(ServletContextEvent arg0) {

try {

QuartzLoad.run();

} catch (Exception e) {

e.printStackTrace();

}

}

// 服务器停止时执行该事件

@Override

public void contextDestroyed(ServletContextEvent arg0) {

try {

QuartzLoad.stop();

} catch (Exception e) {

e.printStackTrace();

}

}

}

第四步:编写com.qt.quartz.QuartzLoad类

这个类里面有2个方法,一个是启动quartz的方法,一个是关闭方法,这个类里面可以定制每隔多少时间循环调用业务类一次。

package com.qt.quartz;

import org.quartz.CronTrigger;

import org.quartz.JobDetail;

import org.quartz.Scheduler;

import org.quartz.impl.StdSchedulerFactory;

public class QuartzLoad {

private static Scheduler sched;

public static void run() throws Exception {

//创建LzstoneTimeTask的定时任务

//三个参数,第一个是自己取得名称、第二个是固定的、第三个是业务类

JobDetail jobDetail = new JobDetail("lzstoneJob",sched.DEFAULT_GROUP,QuartzJob.class);

//三个参数,第一个是自己取得名称、第二个是触发器组名称、第三个是自定义时间

CronTrigger trigger = new CronTrigger("lzstoneTrigger","lzstone","0/50 * * * * ?");

sched = new StdSchedulerFactory().getScheduler();

sched.scheduleJob(jobDetail,trigger);

sched.start();

}

//停止

public static void stop() throws Exception{

sched.shutdown();

}

}

序号 说明 是否必填 允许填写的值 允许的通配符

1 秒 是 0-59 , - * /

2 分 是 0-59 , - * /

3 小时 是 0-23 , - * /

4 日 是 1-31 , - * ? / L W

5 月 是 1-12 or JAN-DEC , - * /

6 周 是 1-7 or SUN-SAT , - * ? / L #

7 年 否 empty 或 1970-2099 , - * /

第五步:编写QuartzJob.class类,自己的业务处理类

package com.qt.quartz;

import java.text.SimpleDateFormat;

import java.util.Date;

import org.quartz.Job;

import org.quartz.JobExecutionContext;

import org.quartz.JobExecutionException;

public class QuartzJob implements Job{

@Override

public void execute(JobExecutionContext arg0) throws JobExecutionException {

// TODO Auto-generated method stub

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");

System.out.println("时间表:"+sdf.format(new Date()));

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
web.xml配置定时任务可以通过添加以下内容来实现: ```xml <servlet> <servlet-name>TimerListener</servlet-name> <servlet-class>com.annlee.website.util.TimerListener</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>TimerListener</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> ``` 其中,`com.annlee.website.util.TimerListener`是定时任务的监听器类。在上面的例子中,TimerListener类实现了ServletContextListener接口,通过在`contextInitialized`方法中启动定时器,并在`contextDestroyed`方法中销毁定时器。定时器任务的具体逻辑可以在AnnleeTimerTask类中实现。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [quartz定时执行任务,并配置web.xml的操作方法](https://download.csdn.net/download/weixin_38693192/12777424)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [web.xml配置定时器](https://blog.csdn.net/sinat_22012547/article/details/42455695)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值