QuartzのJ 2 EEにおける構成と応用(非フレームワーク)

3265 ワード

私が使っているバージョンは2.1です.7は、ネット上で流行している多くのバージョンと互換性がないため、構成が少し異なります.
一、まずwebを配置する.xml、これは以前のバージョンとあまり違いません.
<servlet >
    <servlet-name >QuartzInitializer </servlet-name>
    <servlet-class >org.quartz.ee.servlet.QuartzInitializerServlet </servlet-class>
        <init-param>
               <param-name> config-file</param-name >
               <param-value> /quartz.properties</param-value >
        </init-param>
        <init-param>
           <param-name> shutdown-on-unload</param-name >
           <param-value> true</ param-value>
    </init-param >
    <load-on-startup >1 </load-on-startup>
  </servlet >

注:ここです.propertiesファイルはclasspathを基準に構成された相対パスであり、classpathはwebプロジェクトのsrcフォルダである
二、quartzを配置する.properties、このように:
org.quartz.scheduler.instanceName = MyScheduler
org.quartz.threadPool.threadCount = 3
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
org.quartz.plugin.jobInitializer.class =org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
org.quartz.plugin.jobInitializer.fileNames = quartz_job.xml
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
  • org.quartz.scheduler.InstanceName-タイムスケジューラの名前で、デフォルトはMySchedulerです.
  • org.quartz.threadPool.threadCount-スレッドプールの数は、最大3つのjobsが同時に実行できることを意味します.
  • org.quartz.jobStore.class-すべてのjobsのデータ情報は、ジョブとトリガの詳細な記憶地、デフォルトメモリRAM JobStore
  • を含む.
  • ここではxmlを用いてjobとtriggerの関係を構成する.
  • ここquartz_job.xmlもclasspathを相対経路の基準とする.

  • 三、quartz_job.xml
    <?xml version= '1.0' encoding ='utf-8'?>
    <job-scheduling-data   
     xmlns= "http://www.quartz-scheduler.org/xml/JobSchedulingData"     
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"      
     xsi:schemaLocation="http://www.quartz-scheduler.org/xml/JobSchedulingData 
     http://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd"        
     version= "1.8">        
     <schedule>               
      <job>                      
        <name> job1</ name>                      
        <group> group1</ group>                      
        <description>       </description >                      
        <job-class> org.util.job.TestJob</job-class >               
      </job>               
      <trigger>                      
        <cron>                            
          <name> trigger1</ name>                            
          <group> tgroup</ group>                            
          <job-name> job1</ job-name>                            
          <job-group> group1</ job-group>                            
          <cron-expression> 0/3 * * * * ?</cron-expression >                      
        </cron>               
      </trigger>        
     </schedule>
    </job-scheduling-data>

    注意:xmlファイルのフォーマットは、以前のバージョンと互換性がありません.ここでのみ互換性がありません.
    四、TestJob.java
    public class TestJob implements Job{
       @Override
       public void execute()throws JobExecutionException {
          //        ......
       }
    }