//TimerServiceDAO.java
package com.wdf.ejb3;
public interface TimerServiceDAO {
public void scheduleTimer(long milliseconds);
}
//TimerServiceBean.java
package com.wdf.ejb3.impl;
import java.util.Date;
import javax.annotation.Resource;
import javax.ejb.Remote;
import javax.ejb.Stateless;
import javax.ejb.Timeout;
import javax.ejb.Timer;
import javax.ejb.TimerService;
import com.wdf.ejb3.TimerServiceDAO;
@Stateless
@Remote(TimerServiceDAO.class)
public class TimerServiceBean implements TimerServiceDAO{
private static int count=0;
@Resource private TimerService timerService;
public void scheduleTimer(long milliseconds) {
// TODO Auto-generated method stub
if(count==0){
count=1;
timerService.createTimer(new Date(new Date().getTime()+milliseconds), milliseconds, "大家好。这是我的第一个定时器!");
}
}
@Timeout
public void timeoutHandler(Timer timer){
System.out.println("count="+count);
System.out.println("timer="+timer.getInfo());
if(count>=5){
timer.cancel();
count=0;
}else{
count++;
}
}
}
//JSP
<%@ page language="java" import="com.wdf.ejb3.*,javax.naming.*" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<%
InitialContext ctx=new InitialContext();
TimerServiceDAO remote=(TimerServiceDAO)ctx.lookup("TimerServiceBean/remote");
remote.scheduleTimer((long)3000);
out.println("定时器调用!");
%>
</body>
</html>
分享到:
相关推荐
EJB定时器服务提供了一种在容器级别创建和管理定时任务的方法。它通过`@Schedule`注解或`TimerService`接口来创建定时任务。`@Schedule`注解可以直接在Enterprise Bean方法上使用,而`TimerService`则可以在bean的...
为wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
总的来说,配置Eclipse中的JBOSS服务器连接MySQL数据库涉及多个配置文件的修改,包括数据源定义、JMS服务配置、EJB定时器服务、CMP/JDBC标准配置以及UUID生成器的设置。每个步骤都是确保JBOSS能够正确识别和使用...
这可能涉及了EJB定时器服务,允许EJB组件在预定的时间执行任务。 9. **EntityEjb**: 这个目录可能包含了额外的实体Bean示例,可能更深入地探讨了JPA的高级特性,如继承、多态性、复合主键、查询语言(JPQL)等。 ...
实验可能还包括了如何利用中间件提供的服务,如JMS(Java Message Service)或EJB定时器服务,来扩展Bean的功能。 此外,实验还可能涉及到了解和实践Java EE的其他核心组件,如Servlet、JSP、JPA等,以及如何将这些...
除了基础的EJB开发,MyEclipse还支持EJB的高级特性,如EJB定时器(Timer Service)、EJB的并发控制(Concurrent annotations)、依赖注入(Dependency Injection)等。这些功能可以通过配置EJB元数据或使用Java EE的...
在`ejb-jar.xml`中,还可以定义安全性、依赖注入、定时器服务等高级特性。 `jboss-ejb3.xml`是JBoss AS 7特有的配置文件,用于扩展或覆盖`ejb-jar.xml`中的配置。这个文件允许开发者针对特定的JBoss实现进行更细致...
定时服务主要通过`javax.ejb.TimerService`接口来访问,该接口提供了创建定时器的方法。`@Schedule`注解则用于在实体Bean上声明定时任务。例如,开发者可以使用`@Schedule`注解在特定的时间点或按照预定频率执行...
定时器服务是EJB 3.1提供的另一项重要特性,允许开发者创建定时任务。 - **定时器的创建**:通过EJB组件的方法创建定时器,定义任务的执行时间。 - **定时器的管理**:支持对定时器的查询、取消等操作。 通过上述...
EJB(Enterprise JavaBeans)是Java EE平台中的一个核心组件,用于构建企业级分布式应用程序。...同时,不断探索和学习EJB的高级特性,如定时器服务、安全性、事务管理等,将有助于提升你在企业级应用开发中的技能。
这个部分的源码可能会展示如何配置和使用定时器服务来执行周期性任务。 6. **CompositePK**:在数据库设计中,复合主键(Composite Primary Key)是指由两个或更多列共同组成的主键。源代码可能涉及如何在EJB实体...
之后的版本EJB 3.1和EJB 3.2继续优化,增加了更多功能,如轻量级会话bean和定时器服务。 9. **比较与JPA、JSF和Spring**:EJB通常与JPA(对象关系映射)结合使用,提供数据持久化;JSF(JavaServer Faces)常用于...
6. **定时器服务**:EJB 3.1还提供了定时器服务,允许bean在特定时间或间隔执行任务。`@Schedule`注解可以用来设置定时任务的触发规则。 7. **资源本地化**:EJB 3.1支持资源本地化,即bean可以声明并使用只在其...
此外,还讨论了EJB的容器服务,如安全性、资源注入、定时器服务等,这些都是EJB能提供强大企业功能的基础。 在实体bean部分,书中会涵盖实体bean的两种模式:Bean-managed persistence(BMP)和Container-managed ...
通过学习这个"HelloWorld"示例,开发者可以快速理解EJB3.0的基础操作,并进一步探索更复杂的EJB特性和应用场景,如会话bean、消息驱动bean以及定时器服务等。实践中,结合JPA和JSF等Java EE组件,可以构建出强大的...
首先,JavaEE中的定时器服务主要通过`javax.ejb.TimerService`接口来实现。这个接口提供了一系列的方法,如创建定时器、查询定时器以及取消定时器等。在实际应用中,定时器通常与EJB(Enterprise JavaBeans)结合...
- `javax.ejb.TimerService`:提供了定时任务的管理,可以在EJB中创建和管理定时器。 描述中提到的“开发EJB项目时需要的jar包”表明了`javax.ejb-3.1.2.2.jar`对于EJB项目的必要性。在开发环境中,这个jar需要被...
- 适当地使用异步调用和定时器服务,提高系统性能。 - 考虑使用CDI(Contexts and Dependency Injection)来管理Bean的依赖关系,以提高可测试性和可维护性。 通过以上讨论,我们对在Jboss环境下开发和使用EJB...
- **@PostConstruct**: 标记的方法会在 EJB 实例初始化之后调用,确保实例处于可服务状态。 - **@PreDestroy**: 标记的方法在 EJB 实例被销毁前调用,允许执行必要的清理操作。 - **@PrePassivate** 和 **@...