zoukankan      html  css  js  c++  java
  • 我的第一个Quartz代码

    创建Maven项目

    •   打开Eclipse->File->Project->Maven ->Maven Project直接下一步输入Group Id和Artifact Id ,点击[Finish]按钮

          

    • Maven Repository搜索quartz关键字并选择最新的quartz版本

    • 选择2.3.0版本复制quartz依赖到刚创建的maven项目的pom.xml文件中

    <!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz -->
    <dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz</artifactId>
    <version>2.3.0</version>
    </dependency>

    创建一个HelloJob 类集成Job接口,并实现void execute方法

    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    import org.quartz.Job;
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;
    
    public class HelloJob implements Job {
    
    	public void execute(JobExecutionContext arg0) throws JobExecutionException {
    		//打印当前的执行时间
    		Date date = new Date();
    		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    		System.out.println("Current time is:"+sdf.format(date));
    		//编写具体的业务逻辑 
    		System.out.println("hello world");
    		
    	}
    
    }
    

       

    创建一个HelloScheduler,并且调用Scheduler方法

    import org.quartz.JobBuilder;
    import org.quartz.JobDetail;
    import org.quartz.Scheduler;
    import org.quartz.SchedulerFactory;
    import org.quartz.SimpleScheduleBuilder;
    import org.quartz.Trigger;
    import org.quartz.TriggerBuilder;
    import org.quartz.impl.StdSchedulerFactory;
    
    public class HelloScheduler {
    
        public static void main(String[] args) throws Exception {
            //创建一个JobDetail实例,将该实例与HelloJob class绑定
            JobDetail jobDetail = JobBuilder.newJob(HelloJob.class).withIdentity("myJob","group1").build();
            //创建一个Trigger实例,定义该Job立即执行,并且每隔2秒钟重复执行一次,直到永远
            Trigger trigger = TriggerBuilder.newTrigger().withIdentity("myTrigger", "group1").startNow().withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(2).repeatForever()).build();
            //创建Scheduler实例
            SchedulerFactory sfact = new StdSchedulerFactory();
            Scheduler scheduler = sfact.getScheduler();
            scheduler.start();
            scheduler.scheduleJob(jobDetail, trigger);
        }
        
    }

    运行结果如下:

    SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
    SLF4J: Defaulting to no-operation (NOP) logger implementation
    SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
    Current Exec Time : 2018-09-27 13:12:06
    Hello World
    Current Exec Time : 2018-09-27 13:12:08
    Hello World
    Current Exec Time : 2018-09-27 13:12:10
    Hello World
    Current Exec Time : 2018-09-27 13:12:12
    Hello World
    Current Exec Time : 2018-09-27 13:12:14
    Hello World
    Current Exec Time : 2018-09-27 13:12:16
    Hello World

  • 相关阅读:
    vue 数字滚动的插件 vue-count-to
    ASP.NET Core EF 查询获取导航属性值,使用Include封装
    nginx在asp.net mvc项目中 配置 初步快速入门
    JQuery EasyUI 扩展方法 日期控件 设置时间段函数
    JQueryEasyUI easyui-combobox 单击文本区域显示下拉菜单
    Jquery Easy UI Datagrid 上下移动批量保存数据
    ASP.NET MVC BundleConfig介绍和使用
    ASP.NET MVC5 视图相关学习
    SqlDependency数据库同步+signalr 推送消息
    T4 模板自动生成带注释的实体类文件
  • 原文地址:https://www.cnblogs.com/zhou-test/p/9697891.html
Copyright © 2011-2022 走看看