定时服务与会话bean的开发过程大致相同,但比会话bean多了几个操作:
- 使用容器对象SeesionContext创建定时器。如:@Resource private SessionContext ctx;
- 使用@Timerout注释声明定时器方法。
例如:
package org.xixi.stateless;
import java.util.Date;
import javax.annotation.Resource;
import javax.ejb.SessionContext;
import javax.ejb.Stateless;
import javax.ejb.Timeout;
import javax.ejb.Timer;
@Stateless
public class TimerService implements TimerServiceRemote {
private int count = 1;
@Resource
private SessionContext ctx;
/* (non-Javadoc)
* @see org.xixi.stateless.TimerServiceRemote#scheduleTimer(long)
*/
public void scheduleTimer(long milliseconds) {
// TODO Auto-generated method stub
count = 1;
ctx.getTimerService().createTimer(new Date(new Date().getTime() + milliseconds), milliseconds, "*********");
}
@Timeout
public void timeoutHandler(Timer timer){
System.out.println("-------------------");
System.out.println("定时器事件发生时的参数为:"+timer.getInfo());
System.out.println("=======================");
if (count>=5) {
timer.cancel();
}
count++;
}
}
- timer就是ctx.getTimerService().createTimer(new Date(new Date().getTime() + milliseconds), milliseconds, "*********"); 所创建的!
- timer.getaInfo()返回的信息就是上面创建timer时的第三个参数,例子中是“***************”.
- ctx.getTimerService().createTimer(new Date(new Date().getTime() + milliseconds), milliseconds, "*********"); 它包括三个参数分别是:
- 第一个:定时器启动的时间,如果传入时间小于现在,定时器会立刻启动。
- 第二个:间隔多长时间后再次触发定时事件,单位:毫秒。
- 第三个:传给定时器的参数信息,此值必须是实现Serializable接口。
分享到:
相关推荐
在本主题中,我们将深入探讨如何使用C#语言来创建和发布Windows定时服务。 首先,创建Windows服务涉及到以下几个关键步骤: 1. **创建服务项目**:在Visual Studio中,可以选择“新建项目”,然后在模板中找到...
在本“quartz定时服务demo”中,我们将深入探讨如何配置和使用Quartz来实现定时服务。 首先,让我们了解Quartz的基本概念。Quartz的核心组件包括Scheduler、Job和Trigger。Scheduler是调度器,负责管理和执行Job。...
.NET框架结合Quartz.NET与Topshelf可以有效地创建和管理Windows定时服务,这在企业级应用中非常常见,特别是在需要后台自动执行任务的场景下。本文将深入探讨这两个库的使用和它们之间的协作。 首先,Quartz.NET是...
最近单位需要开发一个定时自动报表服务,由于需求比较复杂,以前一直用的Timer就无法胜任了。经过几天的努力,终于做出来了。主要使用了以下3个组件: Quartz.3.0.7 定时功能主要靠它 Topshelf.4.2.1 把控制台程序转...
"c#定时服务数据同步源代码"这个主题涉及到的核心知识点是利用C#编写一个定时服务,实现数据的自动化同步功能。这样的系统通常用于保持多个数据库或者应用程序间的数据一致性,尤其在分布式系统中尤为重要。 首先,...
此Demo是Windows服务案例,可以在后台添加服务程序完成一些服务,达到定时处理的效果,避免人为手动操作的繁琐,如商城七天之后自动收货功能,生日邮件提醒功能等等,此Demo实用易懂,安装操作简单快捷,有什么不懂...
这指的是用户可以根据需要编写或指定命令行脚本,让定时服务工具在预设的时间点执行这些命令。例如,这可以用于备份数据库、清理日志文件、监控系统性能或者执行任何其他可由命令行控制的任务。通过这种方式,用户...
综上所述,"定时服务注册.rar"提供的解决方案利用C#编写了一个服务注入程序,结合.bat批处理文件和钉钉机器人,实现了异步多线程的信息推送服务。此服务可以作为系统服务运行,不受用户登录状态影响,并可按设定时间...
C#定做服务任务,实现定时服务任务 含Winfrom界面操作,service项目程序,日志程序,可将指定的客户端配置文件作为使用指定文件映射和用户级别的,关于文件夹、文件操作。含有的功能有:安装服务、开启服务、暂停...
在Windows Server环境中,定时服务程序是管理自动化任务的关键工具,它允许系统按照预设的时间间隔或特定时间执行一系列任务。Windows Server自带的任务计划程序(Task Scheduler)就是这样的一个服务,可以方便地...
本示例将围绕“Windows定时服务C#示例”展开,详细解释如何使用C#编写和安装一个名为“Servicetest”的Windows服务。 首先,让我们了解一下Windows服务的基本概念。Windows服务是一种在没有用户界面的情况下在后台...
**Python三方库APScheduler——实现高效定时服务** 在Python开发中,经常需要执行定时任务,例如数据抓取、定时备份、日志清理等。对于这样的需求,Python社区提供了丰富的库来支持,其中APScheduler是一个非常优秀...
在IT行业中,C#是一种广泛使用的编程语言,尤其在开发Windows桌面应用和服务方面。本篇文章将深入探讨如何利用C#创建计划任务,实现系统开机自动执行的功能,确保代码的完美运行。 首先,我们要理解C#如何与Windows...
Java定时服务测试代码主要涉及到的是Java中的定时任务处理,这里使用的工具是`Timer`类,它是Java.util包下的一个核心类,主要用于实现定时调度任务。`Timer`类提供了定时执行任务的功能,它允许我们设置一个延迟...
Webscheduler定时服务和延迟服务 源码描述: 一、源码介绍 主要提供定时服务,延迟服务,日志查看功能。定时服务主要用于定时同步数据,定时结转数据,定时检测异常等等,延迟服务主要用于异步发送数据,发送消息...
本教程重点讲解的是EJB 3.0中的定时服务功能。 在EJB 2.1中,开发者需要实现如`ejbTimeout`、`ejbPassivate`和`ejbRemove`等特定生命周期方法。然而,在EJB 3.0中,这些方法不再是强制性的,只有当实际需要时才需...
1.实现Push推送demo,用AlarmManager实现全局定时和Timer、TimerTask两种方式分别实现定时服务状态栏Notification消息提醒! 2.该功能经过测试,只需要从服务上定时获取到提醒消息即可,稍做修改,即可使用。 3.可以...
《C#定时调度任务服务构建详解》 在IT行业中,定时调度任务服务是不可或缺的一部分,它使得系统能够按预设的时间间隔自动执行某些任务,提高了工作效率并降低了人为操作的复杂性。本文将深入探讨如何利用C#语言,...
SYSBIOS系统开发入门-9-定时服务 - 时钟 时间戳.rar SYSBIOS系统开发入门-9-定时服务 - 时钟 时间戳.rar SYSBIOS系统开发入门-9-定时服务 - 时钟 时间戳.rar
标题 "C# 自动 定时 程序 (windows服务的形式)" 涉及的是...通过研究提供的文档和源代码,你可以学习到如何构建自己的定时服务。在实际开发中,这类服务可以用于数据备份、日志清理、定期报告生成等各种后台任务。