一看就会(java面试 csdn)java面试大全及答案,Java面试基本功之quartz定时组件的简单使用!,java定时任务 quartz,
一. 前言
最近有毕业学员问我,说在面试的时候,被问到了定时组件的使用,这位学员一脸懵逼,他竟然不知道实现定时组件的技术有哪些。其实实现定时功能的技术繁多,比如cron4j、SpringTask、Quartz等。
当然我们大可不必学习所有的定时组件,只需要根据公司的实际情况,学习某一个定时组件的基本功能,根据业务合理运用,实现相关功能即可。
二. quartz的使用
今天我就以quartz定时组件为例,来给大家简单讲解定时组件的基本使用。本次咱们先抛砖引玉,对quartz的使用有个基本的了解,如果你想对quartz有深入的了解,可以偷偷在评论区私信我哟~。
好了,我们废话不多说,直接来盘它!
三. 搭建工程
今天我们基于原生的SSM环境来实现quartz定时组件的开发,虽然XML的配置方式比较繁琐,但配置思路却比较清晰,让人一看就一目了然,对新手而言易于理解。
1.搭建Spring工程,引入依赖
我们先创建一个maven工程,将所需要用到的依赖全部拷贝至pom.xml中。
2.创建spring配置文件
接着创建一个applicationContext.xml文件,并进行相关的配置。
2.1 MethodInvokingJobDetailFactoryBean
然后我们需要定义一个类,然后在这个类里面定义一个需要被定时执行的方法。在quartz中,这个方法的执行是交给一个job执行的工厂bean的。所以我们需要配置这个工厂bean。
工厂bean内部配置targetObject属性。这个属性的值引用了我们需要被任务调度的那个bean。targetMethod: 目标方法。就是我们具体被任务调度的方法。2.2 CronTriggerFactoryBean
根据中文意思,这是一个任务调度工厂的触发器。我们工厂里面定义的目标方法如何执行,就是需要被这个触发器触发并执行的。这个bean的内部有两个属性:
jobDetail 真正需要被触发器触发的任务调度bean。cronExpression 触发器执行需要遵循的时间规则。关于cron表达式,我们可以参照一个在线网站去编写,http://cr http://on.qqe2.com/
2.3 SchedulerFactoryBean
SchedulerFactoryBean是任务调度工厂bean,我们的触发器如果要执行的话,需要在SchedulerFactoryBean里面进行相关配置。通过配置文件,我们发现在内部配置了任务调度触发器的集合。这里为什么是集合呢?因为我们的任务调度触发器可能需要多个,也就是可能会有多个任务需要调度,这就是我们使用List指定触发器的原因。
3.创建任务调度类
然后再创建一个类,编写一个执行方法。
4.测试
接着编写测试类,初始一个IoC容器。
5.代码结构
最后完整的代码结构如下图所示:
6.启动运行
当我们把项目启动后,执行结果如下图所示:
好啦,到这里我们就简单演示了quartz的基本使用,希望对新手小伙伴能有所帮助,如果你还有其他问题,可以在评论区给我留言哦。最后分享一套JavaWeb视频,从零基础入门到项目实战,让你学习Java不迷茫!!!
如果喜欢的话,欢迎关注+点赞+收藏哦!
本文系作者 @河马 原创发布在河马博客站点。未经许可,禁止转载。
暂无评论数据