
quartz
Joker_Ye
此人很懒,不要催更
展开
-
【动态任务-九】Spring+quartz 封装在线操作工具类(包含单次运行,更新,暂停,启动,删除)
【过往系列文章】 过往的文章也有类似的,但过去的版本已经是4年前2016年当时Spring版本还是3.x,现在都用5.x了,今年2020年,想了想还是更新一下最新代码分享给大家,借着今天1024的程序猿大节,把京缘网络关于单系统内核任务架构源码和主要技术点分享给大家,从Controller到Service到使用JY封装好的工具类调用quartz! 我们操作动态任务是为了程序已经启动的时候可以在线控制,不需要每次通过启动程序和关闭程序来调节配置文件,当然这几年出了像xxl-job这样的分布式系统,我们可以原创 2020-10-24 12:27:44 · 1073 阅读 · 1 评论 -
【动态任务-八】SpringMvc+quartz 整合Job(可使用依赖注入@Autowired)
在我们的任务类里面,我们需要使用到springioc依赖注入的接口实现类 因为我们是Springmvc,我们需要在xml做一下配置,一般是spring-application.xml加入spring-quartz.xml <import resource="spring-quartz.xml"/> 这个spring-quartz.xml我们新建一个,如下 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=..原创 2020-10-23 23:45:52 · 1199 阅读 · 0 评论 -
【动态任务-七】Spring整合Cron在线生成表达式(基于bootstrap3自适应样式)
做动态任务,最难的可能就是在线生成,以前我们的做法一般是百度类似改造,或者用一些在线页面生成,如果遇上用户不会,需要一个页面让他们可以看着选择,这个是不错的选择 这里我整合了一个分享给大家,效果图 这里用到的就是有两个,打开一个窗口的页面,我用的layer,这个一般用最新的就可以了 JY.Layer.iframeFull("Cron快速选择",jypath+"/static/plugins/cronb/cron.html"); 关于JY京缘网络的js核心组件,这个我把封装源码再分享一下 L原创 2020-10-23 23:21:13 · 1730 阅读 · 0 评论 -
【动态任务-六】Spring对Cron表达式进行验证和计算时间
【过往系列文章】 使用的spring,maven pom.xml 版本号 <spring.version>5.2.3.RELEASE</spring.version> 对应的依赖 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>${spri.原创 2020-10-23 22:32:32 · 3257 阅读 · 1 评论 -
Quartz使用示例总结
任务调度在目前的JAVA应用程序中运用的十分普遍,故掌握QUARTZ是必备的技能 闲话少说,上官网:http://www.quartz-scheduler.org/ 下载最新1.80资源包 commons-logging log4j sff4j 等jar包要添加进去,quartz的jar包则肯定必须 首先写一个类实现Job接口 Java代码 publ原创 2016-04-02 19:13:23 · 2344 阅读 · 0 评论 -
Spring 3整合Quartz 2实现定时任务一:常规整合
最近工作中需要用到定时任务的功能,虽然Spring3也自带了一个轻量级的定时任务实现,但感觉不够灵活,功能也不够强大。在考虑之后,决定整合更为专业的Quartz来实现定时任务功能。 首先,当然是添加依赖的jar文件,我的项目是maven管理的,以下的我项目的依赖: org.springframework spring-core ${spr原创 2016-03-01 11:54:44 · 1003 阅读 · 1 评论 -
Spring 3整合Quartz 2实现定时任务二:动态添加任务
前面,我们已经对Spring 3和Quartz 2用配置文件的方式进行了整合,如果需求比较简单的话应该已经可以满足了。但是很多时候,我们常常会遇到需要动态的添加或修改任务,而spring中所提供的定时任务组件却只能够通过修改xml中trigger的配置才能控制定时任务的时间以及任务的启用或停止,这在带给我们方便的同时也失去了动态配置任务的灵活性。我搜索了一些网上的解决方法,都没有很好的解决这个问题原创 2016-03-01 12:17:24 · 2979 阅读 · 3 评论 -
Spring 3整合Quartz 2实现定时任务三:动态暂停 恢复 修改和删除任务
前面我们已经完成了spring 3和quartz 2的整合以及动态添加定时任务,我们接着来完善它,使之能支持更多的操作,例如暂停、恢复、修改等。 在动态添加定时任务中其实已经涉及到了其中的一些代码,这里我们再来细化的理一理。先来看一下我们初步要实现的目标效果图,这里我们只在内存中操作,并没有把quartz的任何信息保存到数据库,即使用的是RAMJobStore,当然如果你有需要,可以实现成J原创 2016-03-01 12:21:45 · 1624 阅读 · 0 评论 -
Spring 整合Quartz 2实现定时任务四:细化调整及一些已知的问题
之前已经把功能基本都实现了,这里我们再来优化一下代码。 我们发现,在创建、修改、和删除定时任务时,对于quartz的操作其实是可以封装成一个简单的工具辅助类的,如创建的代码可以抽取成: /** * 创建定时任务 * * @param scheduler the scheduler * @param jobName the job name * @param jobGroup原创 2016-03-01 12:26:35 · 1841 阅读 · 1 评论 -
Spring 整合Quartz 2实现定时任务五:集群、分布式架构实现探讨
到这里,功能上我们已经全实现了。 但是有时候我们的项目不是部署在一台机器上的,而是一个集群环境,往往我们的定时任务只需要一台机器执行就够了。 那么我们怎么样来实现这种集群环境下的定时任务运行呢? 前面说的支持幂等性可以在一定程序上解决这个问题,网上有版本使用数据库加锁的方式也可以,当然,还可以借助zookeeper等方式来实现更强大的分布式锁。 我在这里主要说的方式并不直接原创 2016-03-01 12:28:25 · 3180 阅读 · 0 评论 -
Spring 3实现定时任务
前面已经讲到了spring 3整合Quartz 2来实现时任务,其实从spring 3开始,它本身就已经自带了一套自主开发的定时任务工具Spring-Task,可以将它看成是一个轻量级的Quartz,而且使用起来十分简单,除spring相关的包外不需要额外的包,支持注解和配置文件两种形式。 第一种:配置文件方式 第一步:编写作业类,它是一个普通的Java类,不需要继承和实现任何原创 2016-03-01 12:31:19 · 902 阅读 · 0 评论