java web中定时器的运用
在做web开发的时候,经常需要在一定的时间去跟新某些东西,或是加载某些东西,这就用到了定时器。
当Web工程启动时,定时器能自动开始计时,在整个Web工程的生命期里,定时器每过一段时间就执行一次,所以考虑定时器存放的位置。
定时器肯定不能不能简单的存在于单个Servlet或JavaBean中,必须能让定时器宿主的存活期为整个Web工程生命期,在工程启动时能自动加载运行。结合这两点,跟 Servlet上下文有关的侦听器就最合适不过了,通过在工程的配置文件中加以合理配置,会在工程启动时自动运行,并在整个工程生命期中处于监听状态。
下面就Servlet侦听器结合Java定时器来讲述整个实现过程:
import java.util.Timer;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.http.HttpServlet;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* @date 2010-1-14
* @author wangpeng
* 功能:监听器,用来实现计时器
*/
public class ContextListener extends HttpServlet implements
ServletContextListener {
/**
*
*/
private static final long serialVersionUID = 1L;
private static final Log log = LogFactory.getLog(NewsTimerTask.class);
public ContextListener() {
}
private Timer timer = null;
public void contextInitialized(ServletContextEvent event) {
timer = new Timer(true);
log.info("定时器已启动");
timer.schedule(new NewsTimerTask(event.getServletContext()),
TIME_NEWS_DELAY, TIME_NEWS_PERIOD);
log.info("已经添加任务调度表");
}
public void contextDestroyed(ServletContextEvent event) {
timer.cancel(); //定时器的销毁
log.info("定时器销毁");
}
}
NewsTimerTask- 所要安排的任务。 TIME_NEWS_DELAY - 执行任务前的延迟时间,单位是毫秒。 为0时表明不延迟TIME_NEWS_PERIOD - 执行各后续任务之间的时间间隔,单位是毫秒。
NewsTimerTask继承TimerTask
TimerTask是 由 Timer 安排为一次执行或
相关文档:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class Temp {
public Temp() {
JFrame J = new JFrame("MENU");
Container C = J. ......
eclipse
菜单 -> Window -> Preferences, 打开Preferences窗口,然后依次选择 Java -> JadClipse,确保"Path to decompiler:"的值为"jad.exe"。
http://hi.baidu.com/darmn/blog/item/56678e7f14f81a0129388af7.html
http://hi.baidu.com/zhangge9477/blog/item/adeced08c9663a3ae8248849. ......
用Robot写Java代理
Rational Robot是通过录制用户操作进行功能,性能和兼容性测试的自动化测试工具。通过回放录制脚本进行功能和可靠性测试。本文主要介绍Rational Robot针对java程序和applets如何进行功能测试。
Rational Robot当前版本支持用以下类库开发的Java程序和applet程序:
lJava Foundation Classes(JFCs)
l ......
转自:
JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本文将快速讲解 JSON 格式,并通过代码示例演示如何分别在客户端和服务器端进行 JSON 格式数据的处理。
Json必需的包
commons-httpclient-3.1.jar
commons-lang-2.4.jar
commons-l ......