我们想要安排一个java进程运行到特定的时间间隔。目前我正在考虑使用TimerTask来安排这个过程。在每个循环开始时,将检查当前时间,然后与给定时间进行比较,如果时间已过,则停止该过程。我们的代码如下所示:importjava.util.Timer;importjava.util.TimerTask;publicclassSchedulerextendsTimerTask{publicvoidrun(){//comparewithagiventime,withgetCurrentTime,anddoaSystem.exit(0);System.out.println("Output"
我是WSO2ESB的新手,消息处理器存在以下问题。我有这个消息处理器定义,每秒从队列中提取一个元素(以前存储的XML文档)并调用名为transferProcessorSequence的序列对其进行处理。这是配置:transferProcessorSequence1000true1它工作正常。我的问题是我不必每秒都这样做(它不应该是一个固定值)但必须使用我存储在注册表中的值(最终我可以将这个值存储在其他地方)。而不是有这个设置:1000我必须从注册表或类似的东西(也是属性)中检索存储的值。我怎样才能做这样的事情?**编辑1:我正在尝试遵循Jean-Michel提供的解决方案,但在尝试使用
我正在寻找一个Java类,我可以在其中指定一组日期规则,例如“每3个星期日”和“每两个月的第一个星期一”。我希望能够从中得到类似无限迭代器的东西(.next()将返回与规则集匹配的下一个日期)。我想我可以自己构建它-但日历很麻烦,而且感觉类似的东西应该已经存在了。我讨厌自己重新发明一个更糟糕的轮子。有人知道这样的事情吗?我一直在研究JODA,它似乎为它奠定了基础,但似乎没有提供我想要的全部功能.. 最佳答案 我认为没有现成的joda-time迭代器或JavaCalendarAPI就此而言,但是对于joda,它是如此简单,您应该使用它
是否可以确定两个无界区间(一个边界在无穷大的区间)是否重叠?我试过这个(以及其他类似的变体):Instantnow=newInstant(newDate().getTime());Intervali2=newInterval(now,(ReadableInstant)null);Intervali1=newInterval(now,(ReadableInstant)null);booleanoverlapping=i2.overlaps(i1);但是根据文档,使用null作为第二个参数意味着“现在”而不是“无限”。编辑:我找到了thisanswer在邮件列表中,所以Joda似乎是不可能
我正在尝试解决以下问题:给定N个时间间隔,每个时间间隔指定为(开始,结束),不重叠,根据开始排序-找到包含给定日期的间隔。例如给出:[1,4][5,8][9,10][11,20]3属于第一个间隔,15属于第四个间隔等到目前为止,我有以下基本想法:我们可以使用二进制搜索找到对应的区间(LogN)由于可能只有少数间隔较大,而其余间隔较小,因此根据持续时间对迭代进行排序可能是值得的。然后,在统计上,大多数时候我们会“命中”最长的间隔(O(1)),只是有时这会导致N的最坏情况复杂度。我在考虑是否可以将这两种方法结合起来。另一个想法是根据持续时间排序并将所有间隔插入树中,并按开始日期进行比较,这
我正在寻找Java中的库或辅助类,它们可以让我执行日期间隔的加法和减法。例如,假设我有以下日期间隔:A=["2015-01-0100:00","2015-01-2000:00"]B=["2015-01-0500:00","2015-01-1000:00"]C=["2015-01-1100:00","2015-01-1400:00"]D=["2015-01-1900:00","2015-01-2500:00"]1A20|----------------------------------||---------||----------||------------|5B1011C1419D2
我有一个包含整数值的间隔列表[例如。[1,4],[10,19]等]。有没有办法将这些间隔放入某些java集合的容器中[例如。Set]这样我就可以在容器上调用“联合”函数。'union'函数应该给我一个间隔列表,这样如果任何2个插入的间隔重叠,那么它们应该合并到输出中。我尝试在Guava中使用Range类,但最终在合并之前将所有间隔相互比较。一个优雅的方法将非常感激!这是我根据下面的回复尝试过的。输出是[[1,15],[17,20]],这是正确的。我想知道是否有一些现有的API可以实现类似的功能。publicstaticvoidmain(String[]args){//mockdataL
这个问题在这里已经有了答案:Creatingjavadateobjectfromyear,month,day(6个答案)关闭5年前。我有六个int变量:currentMonth、currentDay、monthFrom、dayFrom、monthUntil和dayUntil。我需要检查今天的月份和日期是否在from和until变量的范围内。例如,如果currentMonth=1,currentDay=2,monthFrom=11,dayFrom=24、monthUntil=3和dayUntil=3日期在区间内,方法应返回true。虽然我不确定该怎么做。除了使用ifs检查每个可能的结果之
我一直在尝试找出用于查找两个时间范围之间重叠小时数的算法,例如:应该返回12。和应该返回4。所以请帮我填补创建以下函数的空白:publicstaticLongfindOverlappingInterval(LongstartTime1,LongendTime1,LongstartTime2,LongendTime2){//Anysuggestions?}谢谢。编辑:我知道创建两个二进制数组的解决方案,使用AND并对结果求和。含义:但这对我的特定需求没有帮助,因为我想将算法的思想用于solr查询,所以使用数组和二元运算符不是我的选择。 最佳答案
在GridBagLayout中,哪个组件最适合在面板中提供空白空间?理想情况下,我想使用具有以下功能的组件:低开销当不需要空白空间时没有副作用(即没有最小尺寸)一个简单的构造函数(无参数)JPanel违反了上面的#2。Box需要一个构造函数参数(上面的#3),在这种简单的情况下实际上没有必要。JLabel运行良好,但我担心它可能会产生一些开销,尽管不可否认它可能非常低。匿名类似乎也能正常工作(即“newJComponent(){}”),但每次我使用它时都会添加一个额外的.class文件。我想它不会比任何给定的事件处理程序有更多的开销。是否值得为此创建一个派生自JComponent的自定