JAVA每隔5分钟执行一个方法

san157239486 2015-02-01 02:41:02
程序采用SSH,打算在启动时执行一个Timer,每隔5分钟执行一个方法,条件是:分钟尾数为5或者0

例如:01:00 01:05 01:10 执行,假如启动web时时间是 12:23,那么 12:25就要执行。不知道哪种方式比较好些,

提前感谢大家~
...全文
15290 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Code研究者 2015-02-02
  • 打赏
  • 举报
回复
spring中自带了定时器,可以写fixed-delay如下配置:
    <task:scheduler id="springScheduler" pool-size="1"/>
    <task:scheduled-tasks scheduler="springScheduler">
        <task:scheduled ref="MakeTemplate" method="makeSite" fixed-delay="5000" initial-delay="0"/>
    </task:scheduled-tasks>
也可以用spring quartz 可可写直接写一个静态方法,在静态方法中初始化线程,在线程运行中,设置其睡眠时间,再或者采用如下方式
 private static final ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
executor.scheduleWithFixedDelay(new DBWriteTask(), TIME_GAP, TIME_GAP, TimeUnit.MINUTES);  
不是太高的手 2015-02-02
  • 打赏
  • 举报
回复
引用 3 楼 zhou9898 的回复:
spring quartz
恩恩
afufeng 2015-02-02
  • 打赏
  • 举报
回复
<bean id="aaa" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail" ref="bbb" /> <property name="cronExpression"> <value>0 0/5 1 * * ?</value> </property> </bean> 意思为 晚上一点到两点 没5分钟执行一次,不知道有没有帮助。
开不了口1990 2015-02-02
  • 打赏
  • 举报
回复
可以用ScheduledExecutorService.scheduleAtFixedRate
程序员一灯 2015-02-01
  • 打赏
  • 举报
回复
spring quartz
百里马 2015-02-01
  • 打赏
  • 举报
回复
每分钟执行一次,看时间的“分”是否是0或5
san157239486 2015-02-01
  • 打赏
  • 举报
回复
大神呢。。指点指点

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧