当前位置: 首页 > 面试题库 >

验证cron表达式在Java中是否有效

孟乐逸
2023-03-14
问题内容

我正在使用Quartz用Java编写调度应用程序。我正在使用CronTrigger,但是我的cron表达式在进行调度之前是先输入数据库的,并且是基于用户输入的。

捕获它们时,有什么方法可以验证cron表达式是否有效?我宁愿这样做并向用户提供适当的错误消息,而不是等到调度程序运行并且尝试创建触发器时得到ParseException。用户输入数据后可能要过几天。


问题答案:

您不能简单地创建一个触发器而不实际执行它吗?如果发生ParseException,您可以简单地给出适当的反馈。如果表达式可以,请将表达式持久保存到数据库。

编辑:或干脆这样做:

org.quartz.CronExpression.isValidExpression(expression);


 类似资料:
  • 我正在使用石英调度程序来安排我的工作。我有一个错误的cron表达式: 当我这样做的时候: is。但是当我查看表达式时,它显然是错误的。其他人也面临类似的问题吗? 注:包装为:包装组织。石英 石英的版本是:2.2.3 请检查来自的CronExpression类http://www.javadoc.io/doc/org.quartz-scheduler/quartz/2.2.3 我还尝试了类的方法,但

  • 问题内容: 我需要找出给定cron表达式代表的日期和时间的第一次出现。是否有任何Java类,实用程序代码可帮助从给定的cron表达式获取数据对象? 问题答案: 您可以检查org.quartz.CronExpression 它具有一个名为getNextValidTimeAfter的方法,您可以使用该方法。

  • 问题内容: 给定一个用户输入字符串,如何确定它在Java中是否为有效的Xpath表达式。很好奇,因为我找不到使用javax.xml.xpath库的方法。谢谢。 问题答案: 我假设您要验证语法,但是如果表达式在xml或xml架构的上下文中有效,则不要验证。您可以使用compile(..)方法,如果xpath的语法不正确,它将引发异常。

  • 用户将输入一些公式/表达式。 我想检查作为函数字符串输入的公式/表达式是否正确(根据MVEL标准)。 下面是一个有效的表达式, 以下是不正确的表达, 下面是代码片段, MVEL提供的API是否接受表达式String并在表达式不正确时返回布尔/抛出异常?

  • 我有一个带两个可能输出的字符串,它将被<代码>

  • 问题内容: 我需要基于来自表单的用户输入来构建cron表达式。所以我有一个日期选择器和一个选择框来选择频率。我可以很容易地以此来构建cron表达式,但是感觉就像我在重新发明轮子。有适合我的合适班级吗?诸如此类的方法 问题答案: 我认为石英的Cron功能可以为您提供此功能,但是您必须进行一些编程才能使其工作。(http://www.quartz- scheduler.org/docs/tutoria