1 用一个例子来说明问题,本例要求统计tomcat启动的次数,并保存在d:/test.txt中。一个很简单的逻辑,重点在于tomcat启动自动加载一个类来实现一定的操作。
2 首先编写一个servlet类--Startup.java
3 将需要自动运行的操作代码写在init方法中。
4 如下配置web.xml
<servlet>
<servlet-name>startup</servlet-name>
<servlet-class>com.usease.Startup</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
5 附servlet全代码:
package com.usease;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class Startup extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GBK";
//Initialize global variables
public void init() throws ServletException {
try {
File file = new File("d:/test.txt");
int count = 0;
if (file.exists()) {
BufferedReader in = new BufferedReader(new FileReader(file));
String inString = in.readLine();
count = Integer.parseInt(inString);
in.close();
}
count++;
PrintWriter out = new PrintWriter(new FileOutputStream("d:/test.txt"));
out.print(count);
out.close();
}
catch (IOException e) {}
System.out.println("Count completed!");
}
//Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
}
//Clean up resources
public void destroy() {
}
}
6 这样,当Tomcat加载这个Context路径的时候,就会自动相应的操作了。