Spring集成quartz

Quartz集成Spring基本使用(Web)

 

目录

1.所需jar.1

1)日志管理...1

2)spring核心包...1

3)quartz的spring支持...1

4)quartz及他的log支持...1

2.集成步骤...2

2.1开发一个业务job(POJ)2

2.2配置quartz(quartz.properties)2

2.3配置Spring下的quartz的任务(task.xml)2

2.4配置Spring(applicationContext.xml)2

2.5在web.xml中配置Spring(web.xml)2

3.基本使用源码...2

3.1开发一个业务job.2

3.2配置quartz.properties.3

3.3配置Spring下的任务task.xml4

3.4配置Spring,applicationContext.xml5

3.5在web.xml中配置Spring.5

 

 

1.所需jar

1)日志管理 

commons-logging-1.1.1.jar 
log4j-1.2.16.jar

2)spring核心包 

3)quartz的spring支持 

org.springframework.context.support-3.0.5.RELEASE.jar 
org.springframework.transaction-3.0.5.RELEASE.jar 

4)quartz及他的log支持 

quartz-1.8.4.jar 
slf4j-api-1.6.1.jar 
slf4j-log4j12-1.6.1.jar 

 

2.集成步骤

2.1开发一个业务job(POJ)

2.2配置quartz(quartz.properties)

2.3配置Spring下的quartz的任务(task.xml)

2.4配置Spring(applicationContext.xml)

2.5在web.xml中配置Spring(web.xml)

 

3.基本使用源码

3.1开发一个业务job

 

/**

 * @authoryoupp

 * job

 */

publicclassPrintReport {

  

   /**

    * 调度方法

    */

   publicvoid run() {

      System.out.println("打印报表");

   }

 

}

 

3.2配置quartz.properties

 

#============================================================================

# Configure Main SchedulerProperties

#============================================================================

org.quartz.scheduler.instanceName = EmailScheduler

org.quartz.scheduler.instanceId = AUTO

 

#============================================================================

# Configure ThreadPool  \u914D\u7F6E\u6570\u636E\u5E93\u8FDE\u63A5\u6C60

#============================================================================

org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool

org.quartz.threadPool.threadCount = 10

org.quartz.threadPool.threadPriority= 5

 

#============================================================================

# Configure JobStore  \u914D\u7F6E\u505A\u4E1A\u5B58\u50A8\u65B9\u5F0F

#============================================================================

org.quartz.jobStore.class = org.quartz.impl.jdbcstore.JobStoreTX

org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate

org.quartz.jobStore.useProperties = false

#\u914D\u7F6EdataSource\u540D

org.quartz.jobStore.dataSource = myDS

#\u8868\u524D\u7F00

org.quartz.jobStore.tablePrefix = QRTZ_

org.quartz.jobStore.isClustered = true

org.quartz.jobStore.clusterCheckinInterval=20000

 

#============================================================================

# Configure Datasources \u914D\u7F6E\u6570\u636E\u5E93\u7684\u8FDE\u63A5

#============================================================================

org.quartz.dataSource.myDS2.jndiURL=java\:comp/env/jdbc/insale

org.quartz.dataSource.myDS2.jndiAlwaysLookup=DB_JNDI_ALWAYS_LOOKUP

 

 3.3配置Spring下的任务task.xml

<?xmlversion="1.0"encoding="UTF-8"?>

<!-- 配置在quartz中执行的调度任务 -->

<beans xmlns="http://www.springframework.org/schema/beans"

      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

      xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd">

   <!--定义业务处理对象 -->

   <beanid="printReport"class="com.pan.quartz.job.PrintReport"/>

   <!--定义调度业务逻辑 -->

   <beanid="printReportjobDetail"class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">

      <!--调用的类 -->

      <propertyname="targetObject"ref="printReport"/>

      <!--调用的方法 -->

      <propertyname="targetMethod"value="run"/>

      <!--false表示等上一个任务执行完后再开启新的任务-->

      <propertyname="concurrent"value="false"/>

   </bean>

   <!--定义调度触发器 -->

   <beanid="printReportjobDetailcronTrigger"class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">

      <propertyname="jobDetail"ref="printReportjobDetail"/>

      <!--cron表达式 -->

      <propertyname="cronExpression"value="0/10 * * * * ?"/><!--10秒执行一次 -->

   </bean>

  

   <!--设置调度管理器 -->

   <beanid="quartzM"lazy-init="false"autowire="no"class="org.springframework.scheduling.quartz.SchedulerFactoryBean">

      <propertyname="triggers">

         <list>

               <ref bean="printReportjobDetailcronTrigger"/>

         </list>

      </property>

   </bean>

</beans>

3.4配置Spring,applicationContext.xml

<?xmlversion="1.0"encoding="UTF-8"?>

<beansxmlns="http://www.springframework.org/schema/beans"

   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

   xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd

">

  

   <!--引入quartz任务配置 -->

   <importresource="classpath:task.xml"/>

  

</beans>

 

3.5在web.xml中配置Spring

<?xmlversion="1.0"encoding="UTF-8"?>

<web-appxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"id="WebApp_ID"version="3.0">

  

   <!-- Spring配置文件 -->

   <context-param>

       <param-name>contextConfigLocation</param-name>

       <param-value>classpath*:/applicationContext.xml</param-value>

    </context-param>

    

   <!-- Spring监听器 -->

   <listener>

        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

   </listener>

   

</web-app>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

来了就走下去

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值