0
我的程序使用HTTP请求从API中提取文章。要查看哪些文章已从API中提取,请使用时间戳。现在我的问题是,我的程序应该只在3天内提取文章。而不是更多。即它不应该超过当前的时间戳。这意味着,就像现在时间是星期三14:00一样,那么周一,周二到现在(周三14:00)的文章应该被取消。 这里的第一个链条接收最后的时间戳文件, 我的代码是:Spring表达式语言添加时间戳
<int:channel id="timestampFile" />
<int:chain input-channel="timestampFile" output-channel="timestampWithHeaders">
<file:file-to-string-transformer delete-files="false" charset="UTF-8" />
<int:header-enricher >
<int:header name="beginTime" expression="payload" />
<int:header name="endTime" expression="new Long(payload) + new Long(${abc.poll.frequency})" />
<int:header name="offset" value="0"/>
</int:header-enricher>
</int:chain>
我如何检查是否结束时间为3天从开始时间,不得超过当前时间戳?
通过这样做只会确保结束时间为3天范围内从开始的时间。不过,我也应该在发出请求之前检查文件最后时间戳中的时间戳,并在需要时进行调整。如果超过3天,则必须重置为现在的-3天。即,如果结束时间戳未来将不得不减小到当前时间戳。我怎样才能做到这一点? – Light
时间戳将来会如何?您可能需要一个自定义的SpEL函数来处理文件时间戳。 –
谢谢。我写了一个函数来限制结果不会超过当前时间。 – Light