Quartz任务调度
1.任务类
public class Job {
private static Log log = LogFactory.getLog(Job.class);
//调度任务方法
public void doBiz() {
//获取已注入的bean,如果new出来的是没有注入的
WebApplicationContext context =
ContextLoader.getCurrentWebApplicationContext();
TestService Testservice = (TestService) context.getBean("testService");
List list = Testservice.getUsers();
log.info("Quartz-----------------------------------"+list.size());
}
}
2.spring的xml配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd">
<bean id="testDao" class="com.tts.test.dao.impl.TestDaoImpl">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="testService" class="com.tts.test.service.impl.TestServiceImpl">
</bean>
<!-- 线程执行器配置,用于任务注册 -->
<bean id="executor"
class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
<property name="corePoolSize" value="10" />
<property name="maxPoolSize" value="100" />
<property name="queueCapacity" value="500" />
</bean>
<!-- 业务对象 -->
<bean id="bizObject" class="com.tts.test.job.Job" />
<!-- 调度业务 -->
<bean id="jobDetail"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="bizObject" />
<property name="targetMethod" value="doBiz" />
</bean>
<!-- 触发器 -->
<bean id="trigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="jobDetail" />
<property name="cronExpression" value="00 0/1 * * * ?" />
</bean>
<!-- 设置调度 -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="trigger" />
</list>
</property>
<property name="taskExecutor" ref="executor" />
</bean>
</beans>
3.结果:
2013-11-20 14:32:00,270 INFO - Quartz-----------------------------------4
2013-11-20 14:33:00,005 INFO - Quartz-----------------------------------4
2013-11-20 14:34:00,005 INFO - Quartz-----------------------------------4
2013-11-20 14:35:00,005 INFO - Quartz-----------------------------------4
分享到:
相关推荐
使用mysql 可运行的完项目 功能: 定时器运行/停止、 更改运行周期、动态增加定时器。
spring整合quartz定时任务调度..........
Spring整合任务调度框架Quartz,本文档详细介绍了Spring整合任务调度框架Quartz,希望可以帮助学习者
Quartz任务调度器与spring整合,做项目的时候常听测试说谁在起着quartz,也不知道是啥,问了下同事,就是定时去执行某些任务的,刚好bug比较少,学习了一下~
Spring中集成的一个定时任务调度器,以备以后使用
Spring 4.2.2 集成 Quartz Scheduler 2.2.2 的一个简单的 demo
整合了 Quartz 的应用程序可以重用来自不同事件的作业,还可以为一个事件组合多个作业。虽然可以通过属性文件(在属性文件中可以指定 JDBC 事务的数据源、全局作业和/或触发器侦听器、插件、线程池,以及更多)配置 ...
本资源是一个最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 的一个简单的 demo,也是博客《最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例》的配套示例项目,该博客地址是:...
作业 是能够调度的可执行任务,触发器 提供了对作业的调度。虽然这两个实体很容易合在一起,但在 Quartz 中将它们分离开来是有原因的,而且也很有益处。 通过把要执行的工作与它的调度分开,Quartz 允许在不丢失...
Quartz 是个开放源码项目,提供了丰富的作业调度集。希望您在阅读完本文并看过代码演示后,可 以把Quartz 的基本特性应用到任何Java™ 应用程序中。
本篇文章主要介绍了Spring整合Quartz分布式调度的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
TimeTask 与quartz简单用法 Spring中任务调度cronExpression配置说明
spring集成quartz实现一个简单的任务调度
spring整合quartz实现简单定时任务调度
定时任务执行(任务调度) 框架中集成springboot+quartz 前端 html js layui vue 等 所有功能均已实现
下面小编就为大家带来一篇Spring整合Quartz实现定时任务调度的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
集成了分布式任务调度框架 Quartz ,任务存储于数据库。 使用SpringMVC作为路由控制, 集成 Swagger2 提供实时 RESTful API文档。 数据持久层集成 Mybatis 框架。 使用自定义注解 @TargetDataSource 实现了多数据源...
在JavaEE系统中,我们会经常用到定时任务,比如每天凌晨生成前天报表,每一小时生成汇总数据等等...使用Quartz框架无疑是非常好的选择,并且与Spring可以非常方便的集成,下面介绍它们集成方法和Cron表达式的详细介绍。
基于quartz的任务调度插件,引入到spring项目即可使用,依赖于redis的订阅可以对任务立即运行,修改任务自动执行时间/频率,暂停等操作。适合需要定时任务的项目进行快速的集成开发,提高开发效率,降低开发难度。