易截截图软件、单文件、免安装、纯绿色、仅160KB

Tomcat中JAVA定时器实现


原文链接:http://badwing.javaeye.com/blog/674263
文章分类:Java编程
好多朋友用过Windows的任务计划,也有不少程序迷自己曾写过时钟报警、系统自动关机等趣味程序,可却很少有朋友在Web工程中实现过类似功能。 
当Web工程启动时,定时器能自动开始计时,在整个Web工程的生命期里,定时器能在每晚深夜触发一次任务。因此定时器的存放位置也值得考查,不能简单的存在于单个Servlet或JavaBean中,必须能让定时器宿主的存活期为整个Web工程生命期,在工程启动时能自动加载运行。结合这两点,跟 Servlet上下文有关的侦听器就最合适不过了,通过在工程的配置文件中加以合理配置,会在工程启动时自动运行,并在整个工程生命期中处于监听状态。 
下面就Servlet侦听器结合Java定时器来讲述整个实现过程。要运用Servlet侦听器需要实现 javax.servlet.ServletContextListener接口,同时实现它的contextInitialized (ServletContextEvent event)和contextDestroyed(ServletContextEvent event)两个接口函数。考虑定时器有个建立和销毁的过程,看了前面两个接口函数,就不容置疑的把建立的过程置入 contextInitialized,把销毁的过程置入contextDestroyed了。 
我把ServletContextListener的实现类取名为ContextListener,在其内添加一个定时器,示例代码如下所示: 
import java.util.Timer; 
import javax.servlet.ServletContextEvent; 
import javax.servlet.ServletContextListener; 
import javax.servlet.ServletException; 
import javax.servlet.ServletRequest; 
import javax.servlet.ServletResponse; 
import javax.servlet.http.HttpServlet; 
public class ContextListener 
extends HttpServlet 
implements ServletContextListener { 
public ContextListener() { 

private java.util.Timer timer = null; 
public void contextInitialized(ServletContextEvent event) { 
timer = new java.util.Timer(true); 
event.getServletContext().log("定时器已启动"); 
timer.schedule(new MyTask(event.getServletContext()), 0, 60*60*1000); 
event.getServletContext().log("已经添加任务调度表"); 

public void contextDestroyed(ServletContextEvent event) { 
timer.cancel();&n


相关文档:

JNA实现Java调用Fortran

在成功实现Java调用C++之后,接下来想到能否通过JNA实现Java调用Fortran,今天试验了一下,还是比较容易的。
网上有一个Java调用F95的例子,但是我考虑不仅要实现F95的调用,还要实现F77的调用,所以费了一些周折。
问题的关键在于F77为过程名自动添加了一个尾部的下划线,所以sub1这个过程,到Java一端,就变成了sub1_, ......

ajax 发送xml文件,java接受xml文件并解析

红色字体为主要代码
jsp页面中
<script language="javascript">
function  updateDB(operate){
  var objDom=new ActiveXObject("msxml.DomDocument");
   var objRoot=objDom.createElement("All");
   objDom.appendChild(objRoot);
  
  var k=document.ge ......

java 得到项目路径

      一 相对路径的获得
   说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目)
  
       String relativelyPath=System.getProperty("user.dir");
   上述相对路径中,java项目中的文件是相对于项目的 ......

Google 、 VMware 让 Java 扛起云计算大旗

Google

VMware

Java
扛起云计算大旗
 
通过与
Google

Salesforce.com

企业
的合作,虚拟化厂商
VMware
正在努力使
云计算
变得更为轻量、可移植,以符合客户的要求。
 
如果有人问
Java
产品供应商都有哪些?
EMC
的子公司
VMware
的排名绝对不会靠前。对大多数人来说,
V ......

Java排序汇总

  排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。分内部排序和外部排序。若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序。反之,若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,则称此类排序问题为外部排序 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号