Heim  >  Artikel  >  Java  >  Beispiel-Tutorial zum Konfigurieren von web.xml

Beispiel-Tutorial zum Konfigurieren von web.xml

零下一度
零下一度Original
2017-07-19 13:39:221687Durchsuche

Das heutige Projekt muss mit einer geplanten Aufgabe durchgeführt werden. Die Funktion von Quarz ist immer noch sehr leistungsfähig und bequem zu verwenden. Die Demo hier implementiert nur einmal am Tag andere Funktionen Ausführlich auf dieser Basis. Haha, schlaf weiter.

Ich hatte schon immer die Idee, das Gelernte aufzuzeichnen, zu organisieren und zu teilen. Heute werde ich mit dem ersten Artikel beginnen, der für das heutige Projekt erledigt werden muss . Die Funktion von Quarz ist immer noch sehr leistungsstark und einfach zu verwenden. Andere Funktionen können auf dieser Basis weiter untersucht werden.

1. Maven-Abhängigkeit:

<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>

2. Doem:

TimingTaskSchedule muss die ServletContextListener-Schnittstelle implementieren Projekt nach dem Zuhören Die Startup-Klasse

package com.thinkgem.jeesite.modules.sys.listener;import javax.servlet.ServletContextEvent;import javax.servlet.ServletContextListener;public class TimingTaskSchedule implements ServletContextListener{// 服务器启动时执行该事件    @Overridepublic void contextInitialized(ServletContextEvent arg0) {try {
            QuartzLoad.run();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }// 服务器停止时执行该事件    @Overridepublic void contextDestroyed(ServletContextEvent arg0) {try {
            QuartzLoad.stop();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

Das 0 0 0 ? * * bedeutet hier, dass es einmal täglich um 00:00:00 ausgeführt wird

von links nach rechts stellen Sekunden, Minuten, Stunden, Tage, Monate bzw. Jahrestage dar

? Zeigt an, dass es Ihnen egal ist* bedeutet, dass Sie es jedes Jahr ignorieren können

package com.thinkgem.jeesite.modules.sys.listener;import org.quartz.CronScheduleBuilder;import org.quartz.CronTrigger;import org.quartz.Job;import org.quartz.JobBuilder;import org.quartz.JobDetail;import org.quartz.Scheduler;import org.quartz.SchedulerFactory;import org.quartz.TriggerBuilder;import org.quartz.impl.StdSchedulerFactory;import com.thinkgem.jeesite.modules.sys.listener.job;public class QuartzLoad {private static Scheduler sched; public static void run() throws Exception { 
        System.out.println("定时任务启动");
        JobDetail jobDetail = JobBuilder.newJob((Class<? extends Job>) job.class)
                .withIdentity("myjob", "group1").build();CronTrigger trigger =(CronTrigger) TriggerBuilder.newTrigger()
                .withIdentity("trigger", "group1")
                .withSchedule(CronScheduleBuilder.cronSchedule("0 0 0 ? * *"))
                .build();
        SchedulerFactory sfact = new StdSchedulerFactory();
        Scheduler schedule = sfact.getScheduler();
        schedule.start();
        schedule.scheduleJob(jobDetail, trigger);
    }//停止  public static void stop() throws Exception{  
           sched.shutdown();  
     }  
}

Job ist Ihre eigene Geschäftsverarbeitung

  job   execute(JobExecutionContext arg0) ==  SimpleDateFormat("yyyy-MM-dd HH:mm:ss""Time:"+"Hello"

3. web.xml-Listening:

com.thinkgem.jeesite.modules.sys.listener.TimingTaskSchedule

<listener>
<listener-class>com.thinkgem.jeesite.modules.sys.listener.TimingTaskSchedule
</listener-class>
</listener>

Das obige ist der detaillierte Inhalt vonBeispiel-Tutorial zum Konfigurieren von web.xml. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn