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); } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。