- 浏览: 731494 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
z6978445:
查询呢?比如要查出 tblRead200710 表与 tblR ...
使用hibernate SQLQuery实现动态表 -
xtp1211:
乱发,自己都没试过
windows下的apache限制IP连接数 -
guanqing123:
在apache的httpd.conf文件中加入
ProxyRe ...
apache2.2 tomcat6 集群 -
wangxingchun:
Thanks again
Axure RP组件库下载 -
feiyu86:
这才是专家嘛,通俗易懂。
Lucene倒排索引原理
在web中,定时器的启动一般随web server的启动而启动,一般有两种方法.
方法一:在web.xml里配置一个Servlet,并设置其随web server的启动而启动。然后在该Servlet的init()方法里启动定时器,在destory()方法里销毁定时器。
方法二:在web.xml里配置一个Listener,然后在该Listener的初始化方法里启动定时器,在其销毁的方法朝左销毁定时器。
在servlet中启动定时器
java 代码
- import java.io.IOException;
- import java.util.Timer;
- import javax.servlet.RequestDispatcher;
- import javax.servlet.ServletContext;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import org.apache.commons.lang.StringUtils;
- public class ConvergeDataServlet extends HttpServlet {
- private static final long serialVersionUID = 1L;
- private Timer timer1 = null;
- private Task task1;
- /**
- * Constructor of the object.
- */
- public ConvergeDataServlet() {
- super();
- }
- /**
- * Destruction of the servlet.
- */
- public void destroy() {
- super.destroy();
- if(timer1!=null){
- timer1.cancel();
- }
- }
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- }
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- doGet(request, response);
- }
- // init方法启动定时器
- public void init() throws ServletException {
- ServletContext context = getServletContext();
- // (true为用定时间刷新缓存)
- String startTask = getInitParameter("startTask");
- // 定时刷新时间(分钟)
- Long delay = Long.parseLong(getInitParameter("delay"));
- // 启动定时器
- if(startTask.equals("true")){
- timer1 = new Timer(true);
- task1 = new Task(context);
- timer1.schedule(task1, delay * 60 * 1000, delay * 60 * 1000);
- }
- }
- }
定时执行操作
java 代码
- /**
- *
- * @author callan
- */
- import java.util.TimerTask;
- import javax.servlet.ServletContext;
- public class Task extends TimerTask{
- private ServletContext context;
- private static boolean isRunning = true;
- public Task(ServletContext context){
- this.context = context;
- }
- @Override
- public void run() {
- if(isRunning){
- }
- }
- }
在web.xml配置这个servlet为服务启动时就调用servlet
<servlet></servlet>< servlet >
< servlet-name >taskservlet< / servlet-name >
< servlet-class >com.task< /servlet-class >
< init-param >
< param-name >startTask< /param-name >
< param-value >true< /param-value >
< /init-param >
< init-param >
< param-name >intervalTime< /param-name >
< param-value >1< /param-value >
< /init-param >
< load-on-startup >300< /load-on-startup >
< /servlet >
<servlet></servlet>
评论
9 楼
cosmo1987
2012-12-13
劉罡 写道
请问,如果我需要使用Java定时器操作一个无法继承TimerTask该如何实现?
这个类已经继承了某个类,所以无法再继承 TimerTask。
这个类已经继承了某个类,所以无法再继承 TimerTask。
看你定义的这个类的用途。如果这个类被定义为是一种扩展的定时器,那就必须继承TimerTask,不应该继承其他的类。而如果该类不是一个定时器,而是实现了某种功能的个对象,那它就不是定时器,创建一个新的定时器类,然后把你需要定时调用的那个功能对象combine进去就好了。
举个简单但是可能不是很恰当的例子:
你有一个抽象类叫做抽象笔记本类,抽象笔记本有开机和关机的功能。然后又定义了一个联想笔记本继承自抽象笔记本类。此时你需要让你的联想笔记本定时开机。
从这里我们就可以看出。联想笔记本并不适合去继承TimerTask。而应该继承抽象笔记本。而此时需要创建一个新的Task用于定时启动你的联想笔记本。在这个新的Task中,包含你的联想笔记本,然后定时启动它就可以了。
8 楼
chenxiang_chenxiang
2012-09-14
第二种怎么列出来呢
7 楼
劉罡
2010-04-08
请问,如果我需要使用Java定时器操作一个无法继承TimerTask该如何实现?
这个类已经继承了某个类,所以无法再继承 TimerTask。
这个类已经继承了某个类,所以无法再继承 TimerTask。
6 楼
can_do
2008-12-31
58行的:
Long delay = Long.parseLong(getInitParameter("delay"));
应该为:
Long delay = Long.parseLong(getInitParameter("intervalTime"));
Long delay = Long.parseLong(getInitParameter("delay"));
应该为:
Long delay = Long.parseLong(getInitParameter("intervalTime"));
5 楼
shileijava
2008-07-18
4 楼
Callan
2008-06-07
是的 ,要将delay 应该换成 intervalTime
<listener>
<listener-class>
calss
</listener-class>
</listener>
<listener>
<listener-class>
calss
</listener-class>
</listener>
3 楼
abcs007
2008-06-06
只是给出了servlet启动的方式,但Listener方式没有给出,希望能补上。
好像58行有问题,delay 应该换成 intervalTime
好像58行有问题,delay 应该换成 intervalTime
2 楼
Callan
2008-05-09
就是通过servlet启动
或通过Listener启动两种
或通过Listener启动两种
1 楼
yangyi336
2008-05-08
不怎么明白
楼主 能否给我个比较全面的
yangyi633@163.com
谢谢咯
楼主 能否给我个比较全面的
yangyi633@163.com
谢谢咯
发表评论
-
Eclipse常用插件列表
2010-03-03 21:21 2311Properties Editor Pro ... -
slf4j简介
2010-02-23 12:00 3055SLF4J不是具体的日志解决方案,它只服务于各种各样的日志系 ... -
SSO单点登录解决方案
2009-10-20 11:18 19831 什么是单点登陆 单点登录(Single Sign ... -
减少全局竞争性同步,提高应用的垂直扩展能力
2009-10-20 10:44 1616减少全局竞争性同步, ... -
插入算法
2009-10-10 11:04 2021插入排序(Insertion Sort)的算法描述是一种简单直 ... -
鸡尾酒排序
2009-10-09 14:49 2125也就是定向冒泡排序, 鸡尾酒搅拌排序, 搅拌排序 (也可以视 ... -
冒泡排序法
2009-10-09 14:46 1610冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两 ... -
org.springframework.util.StringUtils 使用
2009-05-08 09:09 3410我们经常会对字符串进行操作,spring已经实现了常用的处 ... -
JSTL <fmt:formatDate/>
2008-12-29 16:27 11978fmt:formatDate 的输出格式 <fmt:fo ... -
iBatis与Spring集成的批处理
2008-11-28 14:30 2530public String insertBatch(fina ... -
xfire 无法启动
2008-09-24 11:22 1599一般情况下,做ssh组合时,spring是通过web.xml加 ... -
C# 加密 java解密 (DES)
2008-08-13 21:26 5738C#中对数据进行加密,java对加密后的数据解密。 c# ... -
BigDecimal对象的用法(加减乘除)
2008-06-05 15:03 15894java.math.BigDecimal。BigDecimal ... -
利用过滤器对hibernate的session管理,实现session在线程范围内的共享
2008-03-12 18:13 4932hibernate中的Session关系到对数据库的增删查改等 ... -
log4j.properties 使用
2008-03-06 13:12 1570一.参数意义说明输出级别的种类ERROR、WARN、INFO、 ... -
spring2 整合 Dwr(把DWR的配置写到Spring的配置文件)
2008-03-03 16:22 3418Spring 2基于XML Schema的配置,Spring ... -
maven 配置篇之pom.xml
2008-02-29 16:01 1661什么是pom? pom作为项目对象模型。通过xml表示m ... -
maven 配置篇之settings.xml
2008-02-29 15:58 2265maven2 比起maven1 来说,需要配置的文件少多了,主 ... -
maven体验(1)
2008-02-29 11:28 15521.下载maven 地址:http://www.apac ... -
Maven中几个重要的概念
2008-02-29 11:23 2336在Maven中有几个重要的概念需要了解: 一、project ...
相关推荐
Java定时器在Web中的应用.doc
web定时器组件,该组件为java定时器基本应用程序!
我们通常写的timer都是用main方法写的定时器,但同样我们...不过有个致命伤就是集群方面跟quartz不能比,此方法代码做参考不错,如果要用,那么这个方法在一台服务器上执行就行了,其他服务器注释掉web中的监听就行了。
谢谢大家的支持,我会陆续上传相关电子书 ...无论对于Java软件设计还是软件开发,本书都是精通开发Java Web应用的必备的实用手册。 本书适合作为Java相关培训机构的教材,也可作为Java自学人员的参考手册。
Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码...
Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java...
Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码...
谢谢大家的支持,我会陆续上传相关电子书 ...无论对于Java软件设计还是软件开发,本书都是精通开发Java Web应用的必备的实用手册。 本书适合作为Java相关培训机构的教材,也可作为Java自学人员的参考手册。
Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码...
谢谢大家的支持,我会陆续上传相关电子书 ...无论对于Java软件设计还是软件开发,本书都是精通开发Java Web应用的必备的实用手册。 本书适合作为Java相关培训机构的教材,也可作为Java自学人员的参考手册。
Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java...
本书讲解Java Web开发中的高级开发技术,包括企业级...无论对于Java软件设计还是软件开发,本书都是精通开发Java Web应用的必备的实用手册。 本书适合作为Java相关培训机构的教材,也可作为Java自学人员的参考手册。
Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java...
谢谢大家的支持,我会陆续上传相关电子书 ...无论对于Java软件设计还是软件开发,本书都是精通开发Java Web应用的必备的实用手册。 本书适合作为Java相关培训机构的教材,也可作为Java自学人员的参考手册。
5个目标文件 内容索引:Java源码,窗体界面,3DMenu Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。...
applications和applet,applications可以在控制台直接运行,与其他高级编程语言没有太大区别,而java的特色在于它具有编制小应用程序的功能,applet可以在internet上传输并在兼容java的web浏览器中运行的程序;...
Sitemesh 是一个基于WEB页面的布局、装饰以及应用整合的开源框架。它能帮助我们在由大量页面构成的项目中创建一致的页面布局和外观,如一致的导航条,一致的 banner,一致的版权,等等。它不仅仅能处理动态的内容,...
5、非常容易的可以和Web应用服务器结合,Tomcat, Resin, Jetty and Jboss这些服务器已经通过测试和应用,这一切只需要在web.xml中添加load-on-startup直接指定Jcrontab下的 loadCrontabServlet,就可以了。...
5个目标文件 内容索引:Java源码,窗体界面,3DMenu Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。...