java面试题网

普通会员

183

帖子

7

回复

89

积分

楼主
发表于 2019-08-26 15:24:39 | 查看: 5101| 回复: 0

java程序员笔试题之Quartz定时任务

java程序员笔试题之Quartz定时任务

1、什么是Quartz框架?

Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。

2、配置文件applicationContext_job.xml各个属性作用?

  • Job:表示一个任务(工作),要执行的具体内容。
  • JobDetail:表示一个具体的可执行的调度程序,Job是这个可执行程调度程序所要执行的内容,另外JobDetail还包含了这个任务调度的方案和策略。
  • Trigger:代表一个调度参数的配置,什么时候去调。
  • Scheduler:代表一个调度容器,一个调度容器中可以注册多个JobDetail和Trigger。当Trigger与JobDetail组合,就可以被Scheduler容器调度了。

3、Cron表达式详解?

Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义。

  • Seconds(秒):可出现",-*/"四个字符,有效范围为0-59的整数。
  • Minutes(分钟):可出现",-*/"四个字符,有效范围为0-59的整数。
  • Hours(小时):可出现",-*/"四个字符,有效范围为0-23的整数。
  • DayofMonth(日of月):可出现",-*/?L W C"八个字符,有效范围为0-31的整数。
  • Month(月):可出现",-*/"四个字符,有效范围为1-12的整数。
  • DayofWeek(日of星期):可出现",-*/?L C#"四个字符,有效范围为1-7的整数1表示星期天,2表示星期一,依次类推。
  • Year(年):可出现",-*/"四个字符,有效范围为1970-2099年。

4、如何监控Quartz的job执行状态:运行中,暂停中,等待中?

通过往表(新建一个操作日志表)里插入日志的形式:

  • 运行中:通过JobListener监听器来实现运行时更改表信息。
  • 暂停中:调用scheduler.pauseTrigger()方法时,更改表中job信息。
  • 等待中:新添加的job默认给其等待中的状态,也是更改表中的job信息但是上面这种形式的麻烦之处是得频繁的往表里插入数据。


文章来自www.wityx.com,转载请注明出处!原文地址http://www.wityx.com/post/922_1_1.html

您需要登录后才可以回帖 登录 | 立即注册

java面试题网www.wuliaokankan.cnjava建站系统提供技术支持V2.1 网站地图 © 2016-2018