- 浏览: 111347 次
- 性别:
- 来自: 合肥
文章分类
最新评论
-
小布丁丶:
一个简单的问题非要整这么复杂
extjs grid 根据条件禁用选中 -
kylewebgame:
不错啊,做一个线程定时保存,不知道记录后如何做查询呢?或者怎样 ...
一个日志管理设计类
public interface ITaskRunner { /** * * @方法描述:任务运行接口 * @date Jul 1, 2009 * */ public void run(); }
/** * */ package cn.com.starit.pon.service.scheduler.impl; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.quartz.CronTrigger; import org.quartz.Job; import org.quartz.JobDetail; import org.quartz.Scheduler; import cn.com.starit.pon.service.scheduler.CommonSchedulerContainer; import cn.com.starit.pon.service.scheduler.ITaskRunner; /** * @类型: AbstractTaskRunner * @说明: 抽象任务运行器,为实现具体的任务运行提供统一抽象父类 */ public class BaseTaskRunner implements ITaskRunner { protected String taskName = null;任务名称 protected Job clzName = null;一个job protected String timeRule = null;按什么事件触发 public BaseTaskRunner(){} public BaseTaskRunner(String taskName, Job jobClzName, String timeRule) { super(); this.taskName = taskName; this.clzName = jobClzName; this.timeRule = timeRule; } private static Log log = LogFactory.getLog(BaseTaskRunner.class); public void run() { log.info("调度器< "+taskName+" > 初始化定义...开始"); if(this.schedule()) log.info("调度器< "+taskName+" > 初始化定义...成功"); else log.info("调度器< "+taskName+" > 初始化定义...失败"); } private boolean schedule() { if((taskName==null)||(clzName==null)||(timeRule == null)) return false; try { Scheduler scheduler = CommonSchedulerContainer.getScheduler(); JobDetail jobDetail = new JobDetail(clzName.toString(),clzName.toString(), clzName.getClass()); CronTrigger trigger = new CronTrigger(getTriggerName(taskName), null, timeRule); scheduler.scheduleJob(jobDetail, trigger); } catch (Exception e) { e.printStackTrace(); return false; } return true; } public String getTaskName() { return taskName; } public void setTaskName(String taskName) { this.taskName = taskName; } public Job getClzName() { return clzName; } public void setClzName(Job clzName) { this.clzName = clzName; } public String getTimeRule() { return timeRule; } public void setTimeRule(String timeRule) { this.timeRule = timeRule; } protected static String getJobGroupName(String name){ return name+"_JobGroup"; } protected static String getTriggerName(String name){ return name+"_Trigger"; } }
/** * */ package cn.com.starit.pon.service.scheduler; import org.apache.log4j.Logger; import org.quartz.Scheduler; import org.quartz.SchedulerException; import org.quartz.impl.StdSchedulerFactory; /** * 通用调度库 * @类型: CommonScheduler */ public class CommonSchedulerContainer { private static Logger log = Logger.getLogger(CommonSchedulerContainer.class); private static Scheduler scheduler=null; public static Scheduler getScheduler() { try { if(scheduler == null) scheduler = StdSchedulerFactory.getDefaultScheduler(); } catch (SchedulerException e) { log.error(e); e.printStackTrace(); throw new RuntimeException("初始调度器失败"); } return scheduler; } }
配置文件中: <bean id="dDMDayJob" class="cn.com.starit.nms.query.summary.job.DDMDayJob"> </bean> <bean id="dDMMonJob" class="cn.com.starit.nms.query.summary.job.DDMMonJob"> </bean> <bean id="adslDayJob" class="cn.com.starit.nms.query.summary.job.AdslDayJob"> </bean> <bean id="adslMonJob" class="cn.com.starit.nms.query.summary.job.AdslMonJob"> </bean> <bean id='dDMDayJobRunner' class="cn.com.starit.pon.service.scheduler.impl.BaseTaskRunner"> <property name="taskName" value="DDM性能数据统计任务(日)"></property> <property name="timeRule" value="0 0 3 * * ?"></property> <property name="clzName" ref='dDMDayJob'></property> </bean> <bean id='dDMMonJobRunner' class="cn.com.starit.pon.service.scheduler.impl.BaseTaskRunner"> <property name="taskName" value="DDM性能数据统计任务(月)"></property> <property name="timeRule" value="0 0 1 1 * ?"></property> <property name="clzName" ref='dDMMonJob'></property> </bean> <bean id='adslDayJobRunner' class="cn.com.starit.pon.service.scheduler.impl.BaseTaskRunner"> <property name="taskName" value="ADSL性能数据统计任务(日)"></property> <property name="timeRule" value="0 12 11 * * ?"></property> <property name="clzName" ref='adslDayJob'></property> </bean> <bean id='adslMonJobRunner' class="cn.com.starit.pon.service.scheduler.impl.BaseTaskRunner"> <property name="taskName" value="ADSL性能数据统计任务(月)"></property> <property name="timeRule" value="0 0 1 1 * ?"></property> <property name="clzName" ref='adslMonJob'></property> </bean>
发表评论
-
使用BeanUtils时,遇到日期类型的空值时会抛错的解决办法
2013-03-14 16:46 796public class BeanUtilEx exten ... -
Oracle 计算两个时间的差值
2012-11-08 20:26 2462Oracle 计算两个时间的差值 有两个日期数据STA ... -
一个日志管理设计类
2012-07-23 20:10 1257public class LogDataQueue { ... -
JDBC操作数据库的步骤
2012-07-08 21:49 1067#传统JDBC访问数据库步骤 》通过Cla ... -
java 分页类
2012-07-08 21:37 820package com.iflytek.hr.model ... -
java 斗地主发牌
2012-07-08 21:23 1042/** * * @Title: Controlle ... -
面向对象设计1
2012-02-19 16:02 774我要去新疆 面向过程:注重过程,进过什么地方到达新疆,例如过 ... -
Java的内存知识梳理
2012-02-18 10:42 896栈、堆、常量池等虽同属Java内存分配时操作的区域,但其适用范 ... -
试用的管理进程的Java类
2012-02-16 15:01 1080进程的基本信息类 public class ProcessD ... -
初始化容器编写的类
2012-02-15 19:03 856public interface Initializer { ... -
IO流的讲解
2012-02-14 15:54 820关于IO流讲解的一篇不错文章 http://blog.csdn ... -
Java中getResourceAsStream的用法
2012-02-07 14:58 1037三种写法: 1.“ / ”代表了工程的根目录,例如工 ... -
练习对XML文件的操作
2011-12-24 16:50 850初步练习下java对XML文件的操作,加深下记忆而已,代码如下 ...
相关推荐
秒级定时任务 任务日志查看 随时结束任务进程 分散扩展 健康摘要检测(分项目显示对应的健康摘要IP及例程数) 任务日志集中上报 1.10.x版本中客户端配置增加了report_addr项,该配置接收一个http接口配置后,任务...
包含基本的项目配置,统一响应,MySQL和Redis数据库操作,定时任务,图片生成,项目部署,用户权限认证,报表输出,无限层级生成目录树,阿里云手机验证码验证,微信授权,Celery,单元测试,Drone等模块。...
- 定时任务:整合Quartz做定时任务,加入任务日志,任务运行情况一目了然 - 代码生成:高灵活度生成前后端代码,减少大量重复的工作任务(逆向有很多方案,这种基于template的有一定的灵活性) - 邮件工具:配合富...
集成动态定时任务,支持多线程,方便配置 自动化采用服务端客户端分离:服务端维护用例,客户端执行用例 您所看到的只是自动化平台控制端,如果需要执行自动化脚本,还需要客户端代码部署到执行机,后续会更新用户...
系统监控:系统日志、接口api、系统监控、可配置定时任务 前端可配置化定时任务。 采用swagger可视化出实时方法格式以及数据属性,采用阿里druid 工作流程管理:完全实现模块化,无侵入。 流程管理:动态给发布流程...
通过两个核心组件webrouter与webserver提供微服务系统中的接口路由网关、服务注册中心、业务服务容器、定时任务调度中心以及接口文档平台等功能,cgi应用只是其中业务服务容器的部分功能,我们的目标不是实现一个...
在线定时任务配置;支持集群,支持多数据源,支持分布式事务。Spring Boot是一款开箱即用框架,提供各种默认配置来简化项目配置。让我们的Spring应用变的更轻量化、更快的入门。 在主程序执行main函数就可以运行。你...
JEECG是一款基于代码生成器的敏捷开发框架. ...• 各种共通封装(数据字典/邮件发送/定时任务/短信接口/Freemarker工具类) • 兼容IE 6、IE 8+和Google等浏览器 • 支持SQL Server、Oracle和MySQL等主流数据库
该项目已成功集成 actuator(监控)、admin(可视化监控)、...job(分布式定时任务)、swagger(API接口管理测试)、security(基于RBAC的动态权限认证)、SpringSession(Session共享)、Zookeeper(结合AOP实现分布式锁)、Ra
定时任务8.统一异常处理9.整合redis10.配置连接池11.热部署12.身份认证,整合Apache Shiro和自定义拦截器两种方式13.发送邮件14.消息队列,集成RabbitMQ15.生成token 集成jwt1后台gradle构建,2springboot,3,系统...
• 各种共通封装(数据字典/邮件发送/定时任务/短信接口/Freemarker工具类) • 兼容IE 6、IE 8+和Google等浏览器 支持SQL Server、Oracle和MySQL等主流数据库 这个版本只是试用版,如果你觉得好,请多给评价,...
统一接口,注解使用,simple,redis... 自动切换.Scheduler:quartz. 开源稳定,支持集群.自家:hsweb-commons :通用工具类hsweb-easy-orm :为动态表单设计的orm框架hsweb-expands-compress :文件压缩,解压操作hsweb...
实现方法 (1)数据同步:定时自动同步。各单位的数据加单位标识、时间戳、操作标识(CMD ),首次进行全表同步,之后定期进行增量同步; (2)文件同步:手动同步。总部收到请求后在本地查找或去目标单位下载目标...
包含基本的项目配置、统一响应、MySQL和Redis数据库操作、定时任务、图片生成、项目部署、用户权限认证、报表输出、无限层级生成目录树、阿里云手机验证码验证、微信授权、Celery、单元测试、Drone等模块。
jeesuite统一监控平台,基于springboot jeesuite-libs构建,包括kafka监控、定时任务、性能监控、统一配置管理等 企业应用监控系统Ramona341 Ramona 是一个库或者是一个组件使得应用开发者、监控者...
目前业务系中定时任务采用quartz,定时任务散落在各个业务模块中,为了统一管理我们系统中灵活定时任务的需求,我们需要一套可控的定时任务系统,以便于我们系统未来的产品化。 1.2专用名词解释 executor:代指...
项目信息:此项目是基于...整合了 quartz 定时任务框架 ,并进行了封装,只需在构建完定时任务Job类后,在 application-quartz.properties 配置文件中进行简单配置即可;实现了 reids 分布式锁 ,当项目部署集群时,
spring boot demo 是一个用来深度学习并实战 spring boot 的项目,目前总共包含 66 个集成demo。该项目已成功集成 actuator(监控)、admin(可视化监控)、logback...job(分布式定时任务)、swagger(API接口管理测试)等
用一定的数据结构将这些软件定时器组织起来,并提供统一的调用接口,称为“定时器管理”。目前定时器管理主要有2种实现方法: ①静态数组法。将定时器节点存储在数组中。优点是逻辑简单,占用ROM较少。但这种...