Java Quartz框架面试题
2023-03-27 16:05:59
Java程序员在开发过程中,有必要定期执行某些方法和任务,此时可以使用实现这一功能的Quartz框架。本文整理了Quartz框架面试题,是对Quartz框架对定期任务相关核心知识点进行总结和整理。我希望你能通过这篇文章学到你想要的东西Quartz框架知识。
1、什么是Quartz框架?
答:Quartz是一个开源作业调度框架,完全由java用于写作和设计J2SE和J2EE应用程序。它提供了巨大的灵活性,而不牺牲简单性。您可以使用它来创建一个简单或复杂的调度来执行一个操作。
2、Quartz的运行环境有哪些?
答:(1)Quartz可以运行并嵌入另一个独立的应用程序;(2)Quartz可以在应用程序服务器(或servlet容器)中实例化,并参与XA事务;(3)Quartz可以作为一个独立的程序运行,可以作为RMI使用;(4)Quartz可以实例化,独立的项目集群(负载平衡和故障转移功能)用于操作执行。
3、说明Cron表达式的详细解释?
答:Cron表达式是一个字符串,字符串分为5或6个空间,分为6或7个域,每个域代表一个意思。
(1)Seconds(秒):可出现",-*/"有效范围为0-59的四个字符的整数;(2)Minutes(分钟):可出现",-*/"有效范围为0-59的四个字符的整数;
(3)Hours(小时):可出现",-*/"有效范围为0-23的四个字符的整数;
(4)DayofMonth(日of月):可出现",-*/?L W C"有效范围为0-31的八个字符的整数;
(5)Month(月):可出现",-*/"有效范围为1-12的四个字符的整数;
(6)DayofWeek(日of星期):可出现",-*/?L C#"四个字符,有效范围为1-7的整数1表示星期天,2表示星期一,依次类推;
(7)Year(年):可出现",-*/"1970-2099年有效的四个字符。
4、Quartzjob执行状态如何监控:运行、暂停、等待?
答:将日志插入往表(新建操作日志表)的形式:(1)运行中:运行时通过Joblistener监听器更改表信息;(2)暂停:调用schedulerer.pauseTrigger()方法时,更改表中的job信息;(3)等待:默认情况下,新添加的job会改变表中的job信息,但上述形式的麻烦是经常将数据插入表中。
5、cron表达式的特殊字符有哪些?
答:Cron表达式对特殊字符的大小写不敏感,对代表周的缩写英文大小写也不敏感。
(1)星号(*):例如,所有字段都可以用来表示相应时间域的每一个时刻, 在分钟字段中表示“每分钟”;
(2)问号(?):该字符仅用于日期和星期字段,通常指定为“无意义的值”,相当于点位符;
(3)减号(-):表达一个范围,例如在小时字段中使用“10-12”,从10点到12点,即10点、11点和12点;
(4)逗号(,):例如,在星期字段中使用列表值“MON,WED,FRI”,说明星期一,星期三,星期五;
(5)斜杠(/):x/y表示等步长序列,x为起始值,y为增量步长值。如果在分钟字段中使用0/15,则表示0、15、30和45秒,而5/15在分钟字段中表示5、20、35和50,您也可以使用*/y,它等同于0/y。
6、applicationcontext配置文件job.xml各属性的作用是什么?