Jboss7中ejb3使用@Schedule调度器总是每分钟执行

简介: Jboss7中ejb3使用@Schedule调度器总是每分钟执行 1 问题:当我尝试着去开发一个ejb3的@Schedule调度器来执行我预定每5秒钟执行一次的任务时。

Jboss7中ejb3使用@Schedule调度器总是每分钟执行

1 问题:当我尝试着去开发一个ejb3的@Schedule调度器来执行我预定每5秒钟执行一次的任务时。我意外的发现无论我怎么设置,该@Schedule以每分钟来运行。

import java.text.SimpleDateFormat;
import java.util.Date;
import javax.ejb.Schedule;
import javax.ejb.Stateless;
/**
 * 845885222@qq.com
 * @author youyou
 */
@Stateless
public class MakeHtmlSchedule {
    @Schedule(second = "*/10", minute = "*", hour = "*", persistent = false)
    public void doWork() {
        Date currentTime = new Date();
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z");
        System.out.println("ScheduleExample.doWork() invoked at " + simpleDateFormat.format(currentTime));
    }
}
2 一个定时调度器不一定是@ singleton注解的对象,也可以使用@Stateless,甚至使用@Stateful的bean。如果使用的@Stateless或者@Stateful,那么doWork()方法只会是每分钟调用一次。改动为使用@Singleton装饰,就可以实现每10秒运行一次doWork()方法了。


import java.text.SimpleDateFormat;
import java.util.Date;
import javax.ejb.Schedule;
import javax.ejb.Singleton;
/**
 * 845885222@qq.com
 * @author youyou
 */
@Singleton
public class MakeHtmlSchedule {
    @Schedule(second = "*/10", minute = "*", hour = "*", persistent = false)
    public void doWork() {
        Date currentTime = new Date();
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z");
        System.out.println("ScheduleExample.doWork() invoked at " + simpleDateFormat.format(currentTime));
    }
}


每10秒钟执行一次的效果:

VEIGHT 2015-01-31 22:59:00,002 INFO (EJB default - 5) ScheduleExample.doWork() invoked at 2015.01.31 公元 at 22:59:00 CST
VEIGHT 2015-01-31 22:59:10,002 INFO (EJB default - 7) ScheduleExample.doWork() invoked at 2015.01.31 公元 at 22:59:10 CST
VEIGHT 2015-01-31 22:59:20,001 INFO (EJB default - 8) ScheduleExample.doWork() invoked at 2015.01.31 公元 at 22:59:20 CST


3 参考链接: http://www.adam-bien.com/roller/abien/entry/simplest_possible_ejb_3_16



 


目录
相关文章
|
2天前
|
Android开发 开发者 Windows
这是我设计的一种不关机,然后改造操作系统的软件设计思路2.0版本
本文介绍了在不重启系统的情况下实现操作系统改造的两种方案。第一种方案通过SLFM Recovery模式,在独立于操作系统的最高权限环境下完成系统更新与改造,并支持断电恢复与失败回滚。第二种方案采用多分区机制,通过SLFM套件在独立分区中完成系统改造,适用于可中断与不可中断服务场景,确保系统更新过程的安全与稳定。
209 132
|
9天前
|
人工智能 算法 测试技术
轻量高效,8B 性能强劲书生科学多模态模型Intern-S1-mini开源
继 7 月 26 日开源『书生』科学多模态大模型 Intern-S1 之后,上海人工智能实验室(上海AI实验室)在8月23日推出了轻量化版本 Intern-S1-mini。
341 51
|
19天前
|
人工智能 JavaScript 前端开发
实战使用 Qwen3-coder 低代码开发 HTML 个人网站
阿里巴巴开源的Qwen3-coder模型,凭借强大性能和低代码能力,助力用户快速搭建个人网站。本文详解环境配置、提示词设计与部署流程,适合编程新手快速上手,掌握AI辅助开发技能。
1301 8