`

Spring quartz定时器实现加导入的包

 
阅读更多

在网上查找了一些关于定时器的实现方法,最后选择了一种 ,但奇怪的是  居然说cronExpression不在org.springframework.scheduling.quartz.CronTriggerBean中,请见下图:



 我导的包:spring.jar   2.881M

怀疑是不是 Strping的版本问题;

请帮帮忙,再此 谢过;

 

我把那些信息重新建立了一个applicationContext_quartz.xml 放到里面后,没有提示错误了;

新的错误又出现了:

Error creating bean with name 'getGoodsInfo' defined in class path resource [applicationContext_quartz.xml]: Invocation of init method failed; nested exception is java.lang.InstantiationError: org.quartz.JobDetail

 

我导入的包有


 

经历分析 发现最大的问题不在代码 而是所依赖的包

 

于是

 

 我单独重新建立工程,最后成功,代码部分 如下

 

1、applicationContext_qua.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>           

         <!-- 定义调用对象和调用对象的方法 -->
         <bean id="jobTask"  class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
            <!-- 调用的类 -->
            <property name="targetObject">
                <bean class="com.quqrtz.BusinessReport"></bean>
            </property>
            <!-- 调用类中的方法 -->
            <property name="targetMethod">
                <value>work</value>
            </property>
            <property name="concurrent" value="false" />
        </bean>
       
        <!-- 定义触发时间 -->
        <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">
            <property name="jobDetail">
                <ref bean="jobTask"/>
            </property>
            <!-- cron表达式 -->
            <property name="cronExpression">
                <value>0 * 11 * * ?</value>
            </property>
        </bean>
       
        <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序  -->
        <bean id="startQuertz" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
            <property name="triggers">
                <list>
                    <ref bean="doTime"/>
                </list>
            </property>
        </bean>
</beans>

 

 

2、业务类

package com.quqrtz;

import java.text.SimpleDateFormat;
import java.util.Date;

public class BusinessReport{

    public void work(){ //执行报表统计入口函数
        //业务逻辑
     System.out.println("来到这里  时间="+(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")).format(new Date()));
    }
  }

 

3、测试类

package com.quqrtz;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;


public class TestQuqrtz {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  System.out.println("Test start.");
       ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext_qua.xml");        System.out.println("Test end..");
 }

}

4、所需要的包,在附件里面,免得到处去找呀 下载呀 很郁闷的;

     真正需要使用那些包,自己可以慢慢去试;



 

 

 

5、效果图  

我设置的是11点每隔一分钟执行一次



 

 

 6、:cronExpression表达式解释:
0 0 12 * * ?---------------
在每天中午1200触发
0 15 10 ? * *---------------
每天上午10:15 触发
0 15 10 * * ?---------------
每天上午10:15 触发
0 15 10 * * ? *---------------
每天上午10:15 触发
0 15 10 * * ? 2005---------------
2005年中的每天上午10:15 触发
0 * 14 * * ?---------------
每天在下午200259之间每分钟触发一次
0 0/5 14 * * ?---------------
每天在下午200259之间每5分钟触发一次
0 0/5 14,18 * * ?---------------
每天在下午200259600659之间的每5分钟触发一次
0 0-5 14 * * ?---------------
每天在下午200205之间每分钟触发一次
0 10,44 14 ? 3 WED---------------
每三月份的星期三在下午200244时触发
0 15 10 ? * MON-FRI---------------
从星期一至星期五的每天上午1015触发
0 15 10 15 * ?---------------
在每个月的每15天的上午1015触发
0 15 10 L * ?---------------
在每个月的最后一天的上午1015触发
0 15 10 ? * 6L---------------
在每个月的最后一个星期五的上午1015触发
0 15 10 ? * 6L 2002-2005---------------
2002, 2003, 2004 and 2005年的每个月的最后一个星期五的上午1015触发
0 15 10 ? * 6#3---------------
在每个月的第三个星期五的上午1015触发
0 0 12 1/5 * ?---------------
从每月的第一天起每过5天的中午1200时触发
0 11 11 11 11 ?---------------
在每个1111日的上午1111时触发

 

 

 

 

 

 

 

 

 

 

  • 大小: 234 KB
  • 大小: 55.9 KB
  • 大小: 35.1 KB
  • 大小: 91.2 KB
0
6
分享到:
评论

相关推荐

    配置Spring+quartz定时器.docx

    ### 配置Spring+Quartz定时器的知识点详解 #### 一、Quartz简介与应用场景 Quartz 是一个开源的任务调度框架,它...通过上述步骤,我们可以有效地在Spring环境中配置并使用Quartz定时器,实现灵活的任务调度功能。

    idea 使用spring自带的定时器quartz 使用的c3p0 v0.95.2所包含的jar

    这里我们讨论的是如何在`IDEA`中结合`Spring`和`Quartz`,利用`c3p0`作为数据库连接池来实现定时任务。 首先,`c3p0-0.9.5.2.jar`是`c3p0`的一个版本,它包含了对数据库连接池的管理功能。`mchange-commons-java-...

    spring定时器

    1. **导入必要的Jar包**:除了Spring的基本包外,还需要导入Quartz的Jar包,例如`quartz-all-1.6.1.jar`。 2. **编写任务类**:创建一个包含具体业务逻辑的类,该类将被Spring定时器调用。 3. **配置Spring定时器**...

    spring-quartz:使用三种方式实现quartz定时任务

    SpringQuartz定时任务Use technologyspring.version 4.3.16quartz.version 2.3.0CN1.RAMJobStore实现定时任务:最佳性能,因为所有数据都保存在内存中,但是应用程序或系统崩溃时,所有信息都会丢失。2.JDBC+...

    spring定时器实例

    Spring定时器,或者说Spring的定时任务管理,是一个强大的功能,它允许我们在应用程序中安排一系列的任务执行,例如定期备份数据、清理缓存或者执行其他维护工作。在本实例中,我们将探讨如何使用Spring与Quartz结合...

    spring定时器的一个简单应用.doc

    1. **配置Spring定时器**:在Spring配置文件(如`applicationContext.xml`)中,你需要定义一个`TaskScheduler`的bean,通常使用`ThreadPoolTaskScheduler`实现。例如: ```xml ...

    Spring2.5+Quartz定时任务简单例子web工程

    在"Spring2.5+Quartz定时任务简单例子web工程"中,我们可以看到这两个框架的结合使用,主要目标是实现基于 Web 应用的定时任务管理。以下将详细介绍这个项目中可能涉及的知识点: 1. **Spring 2.5**: - **依赖...

    JAVA定时器JAVA定时器.pdf

    在使用Quartz框架时,需要导入Quartz框架的JAR包,例如quartz-1.6.2.jar。 3. 定时器的配置 在Spring框架中,定时器的配置主要涉及三个部分:任务类、_trigger和scheduler。任务类是执行具体任务的类,例如Prison...

    quartz.zip

    - 将解压后的quartz项目导入到IDE,配置好依赖并构建。 - 配置好`quartz.properties`后,启动应用,Quartz会自动加载配置并启动Scheduler。 - 测试:创建一个简单的定时任务,观察是否按照预期执行。 总的来说,...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 mysql版本_spring3.0

    微信接口(身份验证,文本、图文回复等) 微信远程控制服务器重启、锁定、其它应用程序 15.java Quartz 定时器 (定时执行某程序,精确到秒,可设置周期) 16.java websocket 即时通讯技术,点对点,群聊,单聊,EXT4...

    SpringMVC+Mybatis 框架,非Mven版本,自带基本功能和教复杂的表单样例

    自己搞的,赚点积分。下载的人,不会觉得亏。亏了私信我。 【前端框架】 基于bootstrap的AdminLte2.4 ...2、封装了可配置的Quartz定时器;分两个版本:一个基于xml的配置版,一个是读取SQL 3、轻量级缓存 4、页面优美。

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 oracle版本_spring3.0

    微信接口(身份验证,文本、图文回复等) 微信远程控制服务器重启、锁定、其它应用程序 15.java Quartz 定时器 (定时执行某程序,精确到秒,可设置周期) 16.java websocket 即时通讯技术,点对点,群聊,单聊,EXT4...

    SpingBoot集成ElaticJob定时器

    **SpringBoot集成ElasticJob定时器** 在现代的微服务架构中,定时任务的管理和调度是必不可少的一部分。ElasticJob是由当当网开源的一个分布式任务调度框架,它结合了 Quartz 和 ZooKeeper,提供了分布式任务的注册...

    java开发常用jar包

    quartz-1.6.0.jar:一个定时器 jstl.jar:(jsp standard taglib)jstl的核心标签库。 poi.jar:Apache的操作数据转换的类库,能导入和到处Excel,与jxl.jar功能重复。 mysql-connector-java-5.1.6-bin.jar mysql驱动...

    Springboot SSM (springboot+springmvc+MyBits)

    部署时需要创建数据库、初始化数据、更新配置文件并导入依赖包,最终启动项目。 具体配置上,Mybatis配置涉及到数据源设置、实体类创建、Mapper接口编写、mapper文件添加以及自动注入Mapper的配置。Mybatis配置支持...

    JSP 项目源码及文档

    - 定时任务系统,可能用到Java的定时器或者第三方库如Quartz。 - 邮件发送功能,需要理解SMTP协议并使用JavaMail API。 8. **文档**:随附的文档可能涵盖每个项目的介绍、实现原理、关键代码解析以及使用教程,...

    springboot实用资料

    对于IDEA的提示,`Ctrl+Alt+O`是代码优化快捷键,可以自动整理和导入所需的包,提高代码的整洁度和可读性。 这些技术点在SpringBoot项目中非常常见,掌握它们能提升开发效率和项目的稳定性。在实际应用中,可以根据...

    基于springboot的设备管理系统+源代码+文档说明

    - 定时器:Quartz 2.3 - 数据库连接池:Druid 1.1 - 日志管理:SLF4J 1.7、Log4j - 页面交互:Vue2.x **软件需求** - JDK1.8 - MySQL5.5+ - Maven3.0+ **本地部署** - 通过git下载源码 - 创建...

Global site tag (gtag.js) - Google Analytics