quartz学习1

Quartz是一个完全由java编写的开源作业调度框架。这是第一次学习,那就简单学习一下定时任务的开始和结束。

需要的jar包

<dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz</artifactId>
    <version>2.2.3</version>
</dependency>
<dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz-jobs</artifactId>
    <version>2.2.3</version>
</dependency>

1、首先需要创建一个需要定时执行的方法

package com.htwl.waste_api.Test;

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

import java.util.Date;

/**
 * @author jiahailin
 * @Description:
 */
public class HelloJob implements Job {

    public HelloJob(){

    }
    @Override
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        System.out.println("你好,quartz:"+new Date());
    }
}

这里方法要实现Job接口,并且要有一个空的构造方法(不写的话默认有一个空构造方法,不管写不写,要保证有)。

2、然后创建一个任务调度器

package com.htwl.waste_api.Test;

import org.quartz.*;

import org.quartz.impl.StdSchedulerFactory;

import java.util.Date;

/**
 * @author jiahailin
 * @Description:
 */
public class FirstTest {

    public void run(){
        SchedulerFactory sf = new StdSchedulerFactory();
        try {
            //先获得scheduler的引用
            Scheduler sche = sf.getScheduler();
            //搞一个执行时间,这个时间比现在时间多一分钟
            Date runTime = DateBuilder.evenMinuteDate(new Date());
            //定义一个job,并且让job与我们的HelloJob产生关联
            JobDetail job = JobBuilder.newJob(HelloJob.class).withIdentity("jobName1","jobGroup1").build();
            //定义触发器,让job在我们定义的时间触发
            Trigger trigger = TriggerBuilder.newTrigger().withIdentity("jobTrigger1","jobGroup1").startAt(runTime).build();
            //告诉quartz使用我们的触发器来安排运行job
            sche.scheduleJob(job,trigger);
            System.out.println(job.getKey() + " will run at: " + runTime);
            //启动scheduler(在scheduler启动之前,实际上无法运行任何东西)
            sche.start();
            System.out.println("------- Waiting 65 seconds... -------------");
            //等一会,保证定时任务执行完成
            try {
                // wait 65 seconds to show job
                Thread.sleep(65L * 1000L);
                // executing...
            } catch (Exception e) {
                //
            }

            //关掉scheduler
            System.out.println("------- Shutting Down ---------------------");
            sche.shutdown(true);
            System.out.println("------- Shutdown Complete -----------------");
        } catch (SchedulerException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args){
        FirstTest ft = new FirstTest();
        ft.run();
    }
}

完成了,怎么样,有没有发现很简单。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
探索全栈前端技术的魅力:HTML+CSS+JS+JQ+Bootstrap网站源码深度解析 在这个数字化时代,构建一个既美观又功能强大的网站成为了许多开发者和企业追逐的目标。本份资源精心汇集了一套完整网站源码,融合了HTML的骨架搭建、CSS的视觉美化、JavaScript的交互逻辑、jQuery的高效操作以及Bootstrap的响应式设计,全方位揭秘了现代网页开发的精髓。 HTML,作为网页的基础,它构建了信息的框架;CSS则赋予网页生动的外观,让设计创意跃然屏上;JavaScript的加入,使网站拥有了灵动的交互体验;jQuery,作为JavaScript的强力辅助,简化了DOM操作与事件处理,让编码更为高效;而Bootstrap的融入,则确保了网站在不同设备上的完美呈现,响应式设计让访问无界限。 通过这份源码,你将: 学习如何高效组织HTML结构,提升页面加载速度与SEO友好度; 掌握CSS高级技巧,如Flexbox与Grid布局,打造适应各种屏幕的视觉盛宴; 理解JavaScript核心概念,动手实现动画、表单验证等动态效果; 利用jQuery插件快速增强用户体验,实现滑动效果、Ajax请求等; 深入Bootstrap框架,掌握移动优先的开发策略,响应式设计信手拈来。 无论是前端开发新手渴望系统学习,还是资深开发者寻求灵感与实用技巧,这份资源都是不可多得的宝藏。立即深入了解,开启你的全栈前端探索之旅,让每一个网页都成为技术与艺术的完美融合!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值