quartz实例以及主要事项(注解)

实现任务类:

package com.vnetoo.nec.base.quartz;

import org.springframework.context.annotation.Lazy;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

/**
 * 定时发送信息
 *
 * @author lingpy
 * @since 1.0
 */
@Component
@Lazy(false)
public class SendMessageJob{
    private static long time = 0;
    
     @Scheduled(cron="0 0/2 *  * * ? ")  //两分钟一次
    public void work(){  
         time++;
        System.out.println("SendMessageJob : send message " + time + ",current :" + System.currentTimeMillis());  
    }  
}

spring.xml  配置

xmlns:task="http://www.springframework.org/schema/task"

xsi:schemaLocation="
        http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.1.xsd

">

<task:annotation-driven/><!-- task任务扫描注解 -->

spring.xml可以添加注解扫描的配置

xmlns:context="http://www.springframework.org/schema/context

xsi:schemaLocation="

http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd

">

<context:component-scan base-package="com.vnetoo.nec" />

主要事项:

在Spring配置和Quartz集成内容时,有两点需要注意

1、在<Beans>中不能够设置default-lazy-init="true",否则定时任务不触发,如果不明确指明default-lazy-init的值,默认是false。可使用@Lazy(false)显示确定

2、在<Beans>中不能够设置default-autowire="byName"的属性,否则后台会报 org.springframework.beans.factory.BeanCreationException错误,这样就不能通过Bean名称自 动注入,必须通过明确引用注入

时间: 2024-08-05 09:16:51

quartz实例以及主要事项(注解)的相关文章

JDK+JDBC+MySQL实例及注意事项

by qx.zhong Hangzhou 29 Jun 2014 开发环境 OS:  Win8.1 x64 JDK: 1.8 SE DB:  MySQL 5.5 Lib:  mysql-connector-java.jar 1. MySQL数据库数据类型与JDK之间的特殊对应关系 下表只列举几个特殊的值类型对照,其余的又需要可以参考MySQL官网的值类型说明(http://dev.mysql.com/doc/refman/5.1/zh/index.html)以及JDK的相关资料. MySQL J

如何在spring中运行多个schedulers quartz 实例

http://wzping.iteye.com/blog/468263 1.定义一个JOB <!-- 使用pojo来做job,指定pojo和method -->     <bean id="jobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">         <property name="tar

动态生成div层的实例及注意事项

动态生成html代码,然后传给一个JS插件. 实例如下: 1 /// <summary> 2 /// 动态构造弹出层 3 /// </summary> 4 /// 1 5 /// add 6 /// 帝华 7 /// 10:11 2014/11/27 8 /// <param name="chapName">章节名称</param> 9 /// <param name="wordCount">字数</

微信企业号简单的OAuth2验证接口实例(使用SpringMVC非注解方式)

目前企业号只提供了scope为"snsapi_base"的应用授权作用域,也就是不会跳转到让用户授权的页面. 之前写了使用注解方式验证并获取用户信息的实例,大家不是很理解,问题很多,现在附上简单的验证获取用户信息的实例! 微信企业号OAuth2验证接口实例(使用SpringMVC) OAuth2.0验证需要注意: 1.redirect_uri参数是授权回调地址,也就是说这个地址外网是可以访问的,所以如果使用本地映射服务器的猿们请修改为外网可以访问的地址! 2.配置可信域名,可信域名是1

spring+quartz实例

spring自己就支持quartz,这两个集成经常会出现因为包的版本问题而出现的各种问题.而且不同版本的配置方式也有点不同. 我用的是spring4.15+quartz-2.2.0.jar. 先是配置文件applicationContext.xml <!-- 启动触发器的配置开始 --> <bean name="startQuertz" lazy-init="false" autowire="no" class="or

Spring通过工厂创建实例的注意事项

假设第三方(or别的team)提供一个工厂类(此类是不能够改动的.往往以jar包形式提供的),须要供给我们项目来使用. 可是我们自己的项目使用了spring来配置,所以我们当然希望可以通过spring的aop来配置这个工厂类来,来创建实例以进行引用. 可是这个工厂类的源码比較特殊.例如以下: package x.y; import java.util.Properties; import x.y.client.CmdClient; import x.y.client.InternalCmdCli

quartz 实例记录

之前介绍过了quartz的一些相关理论知识,感觉上挺简单的,实际动手操作也确实如此,去quartz的官网上把Jar包下载下来以后,会看到它的目录里有例子程序,看完第一个例子觉得还可以,但是看后面两个例子程序有点让人小小的无语,可能quartz觉得程序写的越多,给出的使用方法也会越多,但是看上去很乱,而且大部分代码是重复的,所以我把他们简单化成一个例子,把它们记录下来. 本文一共有两个例子,这两个例子共用一个Job的实现,叫MyJob类,代码如下 package com.jll.quartz; i

redis 主从配置实例、注意事项、及备份方式

这两天在配置线上使用的redis服务.总得看起来,redis服务的配置文件还是非常简洁.清楚,配置起来非常顺畅,赞一下作者. 下面是我使用的配置,使用主从模式,在master上关掉所有持久化,在slave上使用AOF持久化: $cat /opt/redis/etc/redis.conf ######Master config ###General 配置 daemonize yes     #使用daemon 方式运行程序,默认为非daemon方式运行 pidfile /tmp/redis.pid

spring整合quartz并持久化

spring整合quartz有两种方式: 一.常见是使用配置文件,将定时任务保存到内存中 简单示例: <!-- 短信催还提醒任务调度 --> <bean id="overdueRecall" class="com.sursen.souba.ddlibserve.quartz.OverdueRecallTimerTask" /> <!--定义定时执行overdueRecallTimerTask 这个bean中的overdueRecall(