【发布时间】:2011-03-13 13:27:44
【问题描述】:
我有以下问题。我有一个石英作业,每 5 分钟运行一次,并进行 Web 服务调用以检索大对象。此应用程序的目的是循环遍历对象中的 List 并从多个类别中捕获计数。
一个具体要求是为每个类别分配一个任意窗口,例如上午 9 点到下午 12 点。如果我们在该窗口中,则计数将添加到从先前作业继续的滚动计数中,否则将被忽略。
问题。我正在从.properties 文件中加载可配置的开始时间(格式为美国东部标准时间上午 9:00)和int 持续时间(以分钟为单位,即 180)。
问题是处理此问题的最佳方法是什么。现在我只是在实例化我的业务类时将可配置的开始时间转换为long。我使用Calendar 来计算结束时间的long 值。由于这些都是 1970 年的时间,所以当我想知道现在是否介于这两个时间之间时,我需要一些讨厌的东西。我将当前的new Date() 格式化,去掉年份,再次使用Formatter 到parse() 1970 年的日期,然后我可以对我的开始和结束时间进行简单的long 比较。
我知道必须有一种不那么丑陋的方法来解决这个问题。有什么想法吗?
【问题讨论】:
标签: java date-comparison