只要启动服务器Tomcat会自动定时启动,下面程序是设置在00:00时启动
Servlet监听器:
package axtic.servlet;
import java.util.Timer;//定时器类
import axtic.bean.exportHistoryBean;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class SysContextListener implements ServletContextListener
{
private Timer timer = null;
public void contextInitialized(ServletContextEvent event)
{//在这里初始化监听器,在tomcat启动的时候监听器启动,可以在这里实现定时器功能
timer = new Timer(true);
event.getServletContext().log("定时器已**************************************启动");//添加日志,可在tomcat日志中查看到
System.out.print("haha");
timer.schedule(new exportHistoryBean(event.getServletContext()),0,5*1000);//调用exportHistoryBean,0表示任务无延迟,5*1000表示每隔5秒执行任务,60*60*1000表示一个小时。
event.getServletContext().log("已经添加%%%%%%%%%%%%%%%%%%%%%%%%任务");
}
public void contextDestroyed(ServletContextEvent event)
{//在这里关闭监听器,所以在这里销毁定时器。
timer.cancel();
event.getServletContext().log("定时器销毁");
System.out.println("edddd");
}
}
JavaBean:
package axtic.bean;
import java.util.Calendar;
import java.util.TimerTask;
import javax.servlet.ServletContext;
import java.io.File;
public class exportHistoryBean extends TimerTask
{
private static final int C_SCHEDULE_HOUR = 0;
private static boolean isRunning = false;
private ServletContext context = null;
public exportHistoryBean(ServletContext context)
{
this.context = context;
}
public void run()
{
Calendar c = Calendar.getInstance();
if(!isRunning)
{
if(C_SCHEDULE_HOUR == c.get(Calendar.HOUR_OF_DAY))
{
isRunning = true;
context.log("开始执行指定任务");
//-------------------开始保存当日历史记录
//在这里编写自己的功能,例:
File file = new File("bbbbbbbbb");
file.mkdir();
//启动tomcat,可以发现在tomcat根目录下,会自动创建temp文件夹
//-------------------结束
isRunning = false;
context.log("指定任务执行结束");
}
else
{
context.log("上一次任务执行还未结束");
}
}
}
}
WebXml:
<web-app>
<display-name>WebTomcatTimer</display-name>
<listener>
<listener-class>axtic.servlet.SysContextListener</listener-class>
</listener>
</web-app>
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yfhdsz/archive/2006/09/19/1243963.aspx
分享到:
相关推荐
定时启动tomcat应用服务器批处理脚本,特点:直接用即可,可二次开发和部署。
自定义tomcat文件路径,支持Linux下定时启动Tomact脚本文件。其中包括日志打印格式等数据跟踪。
windows下,把tomcat作成服务开机自启动不显示cmd窗口.zip
1、 Linux下Tomcat定时启动 首先写一个自动重启tomcat的shell , 并配合linux下 crontab 执行定时任务。
Linux下定时重启Tomcat 1.写一个shell脚本restart.sh,重新启动tomcat vi restart.sh //是新建文件如果没有该文件
加入系统启动任务,可以监测tomcat运行情况,当tomcat停止服务时,可以自动启动tomcat
每天定时重启tomcat,通过在开始-附件-系统工具-任务计划,里设置的启动时间点来定时重启tomcat
linux定时自动重启TOMCAT,SHELL脚本, 按制定时间启动脚本,并自动查找TOMCAT进程,关闭TOMCAT进程,然后再启动TOMCAT进程,服务器压力过大,或遭受攻击时,TOMCAT集群时自动维护出问题的TOMCAT。
linux操作系统,制定定时任务步骤: 用ssh工具连接到系统后,执行如下步骤: 1)crontab -l 查看定时; 2)crontab -e 此时表示已可以编辑定时任务,但还没进入编辑模式; 3)再次输入i,进入编辑...
tomcat启动时定时循环执行内容(action) 本人亲自编写的小程序,简单易懂,欢迎下载评论!
我们通常写的timer都是用main方法写的定时器,但同样我们也需要根据服务器启动后定时器也启动的 定时执行任务。不过有个致命伤就是集群方面跟quartz不能比,此方法代码做参考不错,如果要用,那么这个方法在一台...
tomcat 启动 停止 重启 shell 脚本
内含tomcat关闭和启动两个程序, 自动重启时,先执行关闭程序,在执行安装程序
在windows环境下将nginx和tomcat设置为系统自动启动服务,便于服务器重启后能正常启动web服务。
Tomcat 默认是无法自动释放内存,可以通过可执行文件结合任务计划,定时对tomcat进行重启。达到释放内存的目的。
NULL 博文链接:https://hbiao68.iteye.com/blog/1570415
定时通过curl检测tomcat启动的web是否成功连通,若访问失败,重新启动 tomcat,保证 web 服务的正常使用,并将检测的日志输出到日志文件中。
win server服务器上面的tomcat老是不定时挂掉, 于是利用定时操作脚本判断tomcat80端口是否在运行, 如果运行则放过, 如果down掉就启动tomcat,解决tomcat不定时挂掉导致业务数据流通丢失问题.不扯淡, 上脚本. 1.给...
这是一个经过测试(WindowsServer 2008)的Tomcat重启脚本,可以放心使用
Tomca8配合windows的定时任务启动脚本。window的任务与计划中添加定时任务启动脚本