在企业bean中创建一个计时器,一般放在ejbPostCreate方法中(因为对实体bean来说,它的主键必须可用,所以不放在ejbCreate方法中)。创建代码:
TimerService ts=entityContext.getTimerService();
ts.createTimer(midnight, interval, null);
同时,该企业bean必须实现TimedObject接口,该接口中有个方法ejbTimeout,实现具体定时动作。
public void ejbTimeout(javax.ejb.Timer timer){
//发送邮件
}
附:与计时器服务相关的接口
1. TimerService 用createTimer方法创建计时器对象
2. Timer
3. TimerHandle
4. TimedObject
public interface TimedObject {
public void ejbTimeout(Timer timer);
}
若一个计时器到期,则会调用ejbTimeout方法。所以,所有创建计时器的bean必须实现TimedObject接口。
对于实体bean,计时器对象与创建它的bean实例关联(由一个主键标识)。若一个容器过程崩溃后重启,容器首先用主键激活实体bean的一个实例,然后,如果该bean有任何未完成的动作到期,则通过它的ejbTimeout方法调用实现。
对于无状态会话bean和消息驱动bean,因为没有相关联的标识,所以传递计时器通知时,容器使用与创建该计时器的无状态会话bean或消息驱动bean有相同类型的bean的实例.
分享到:
相关推荐
- EJB 3.1引入了“Singleton”bean,这是一种全局唯一的bean,提供了一种全局状态管理的方式,适用于资源池或计时器服务等场景。 - 进一步优化了Message Driven Bean (MDB),使得处理消息驱动的应用更加简单,支持...
##### 2.5 计时器服务 - **定时任务**: 提供定时任务的支持,方便实现定期执行的任务。 - **资源管理**: 自动管理计时器资源,减少开发者的工作负担。 #### 三、总结 EJB 2.1和EJB 3.0是企业级应用开发的重要里程...
3. **单例bean(@Singleton)**:在整个应用生命周期中只有一个实例,常用于全局配置或计时器服务。 4. **消息驱动bean(@MessageDriven)**:处理JMS(Java Message Service)消息,用于异步处理任务,提高了系统...
这通常用于系统级别的服务,如计时器服务或日志服务。 #### 2.2 工厂模式 工厂模式用于创建EJB实例,特别是在需要动态创建不同类型Bean的场景。EJB 3.1引入了注解驱动的配置,简化了Bean的创建,但传统的工厂模式...
ejb-定时器-测试 EJB TIMER SERVICE API 使用测试项目 #文档和/或官方教程: ://docs.oracle.... 2 - 程序化定时器: 此示例旨在以编程方式说明计时器的使用,称为Programmatic Ti
动态代理允许在调用实际接口方法前和后添加额外的行为,比如设置超时计时器。 4. **线程池管理**:"CallInterfaceThreadPool.java"可能是一个自定义的线程池实现,用于管理和控制EJB接口的并发调用。线程池可以有效...
EJB2.1中的新特性主要集中于有关SOAP和WSDL的Web服务,包括两种新...另外,新标准也推出了一种新的计时器服务,使得开发人员可以设计计时事件,并提供消息联接的接口,供开发人员在组件之间控制消息的流动之用。 这
- **计时器服务:**介绍了如何使用计时器服务执行定时任务。 - **安全模型:**讲解了基于角色的访问控制。 ##### 2.9 第9章:事务 - **事务管理:**概述了Java EE 7中的事务管理机制。 - **传播行为:**说明了事务...
EJB 3.2规范是Java EE 7中的一部分,它简化了EJB的开发模型,并引入了注解、依赖注入和拦截器等特性,使EJB的使用更加方便。 JPA(Java Persistence API)是Java EE 7中的对象关系映射(ORM)解决方案的标准。JPA...
在Java EE环境中,拦截器可以应用于EJB或CDI组件,通过声明式的方式添加到服务层方法上,执行预处理和后处理逻辑。 2. **为什么要使用拦截器进行性能测量?** 使用拦截器进行性能测量的好处在于,它可以在不修改...
DetermineDigArea 13.4.8. 无雷连通区 FindSafeArea 13.4.9. 随机布雷 RandomSetMine 13.4.10. 周围地雷个数FindAroundMineNumber 13.4.11. 显示剩余雷数CountMine 13.4.12. 计时器TimeCount 13.4...
在实际应用中,这样的时间组件可以用于日程管理、计时器、倒计时、实时时间显示等多种场景。它可能包含以下功能: - 获取系统时间并实时更新显示。 - 用户自定义时间输入,如选择特定的小时、分钟和秒。 - 时间的加...
它包含一组API和服务,如Servlet、JSP、EJB(Enterprise JavaBeans)、JMS(Java Message Service)等,用于构建分布式、多层架构的应用。 2. **JSP(JavaServer Pages)**:JSP是一种服务器端脚本语言,用于生成...
JSP可以用来生成动态的试卷,同时可能结合JavaScript实现一些交互功能,如计时器、答案选择等。 5. **自动评分模块**:系统在考生提交答案后,会自动进行评分。这需要编写逻辑来匹配考生的答案和标准答案,可能涉及...