Servlet如何实现网页的访问计数器?
有时候我们需记录以下一个Servlet被访问了多少次,那么我们该如何操作呢?
下文将借助Servlet生命周期的特性对网页访问进行相关的计数操作,如下所示:
Servlet生成周期简介说明
下文将借助Servlet生命周期的特性对网页访问进行相关的计数操作,如下所示:
Servlet生成周期简介说明
实现思路: 1.在init()方法中初始化一个全局变量(因为Servlet加载时,init才会运行一次,以后都不运行) 2.doGet或doPost方法中对其全局变量进行加1 3.destory中也可以将其保存在数据库中进行持久化存储例:
/*PageFangWenCiShu.java */
package servlet01;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/PageJiShu")
public class PageFangWenCiShu extends HttpServlet {
private static final long serialVersionUID = 1L;
private static long qty = 0;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// 访问计数加1
qty++;
resp.setContentType("text/html;charset=UTF-8");
PrintWriter out = resp.getWriter();
String title = "java265.com -此Servlet访问次数";
out.println("<body bgcolor=\"#f0f0f0\">\n" + "<h4>" + title + "</h4>\n" + "<h5>" + qty + "</h5>\n");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


