前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >15. Servlet入门 - 统计网站被访问的总次数

15. Servlet入门 - 统计网站被访问的总次数

作者头像
Devops海洋的渔夫
发布2022-01-14 17:46:08
9790
发布2022-01-14 17:46:08
举报
文章被收录于专栏:Devops专栏

15. Servlet入门 - 统计网站被访问的总次数

需求

  • 在页面中显示您是第x位访问的用户.

思路分析

image-20191208160926430

代码实现

1.CountServlet 实现 count 总次数在 ServletContext 的 计数

image-20201228005843990

代码语言:javascript
复制
@WebServlet(name = "CountServlet", value = "/count")
public class CountServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1. 读取Servlet中的count参数
        ServletContext servletContext = getServletContext();
        Object count = servletContext.getAttribute("count");

        //2. 判断count参数是否存在,如果不存在,则初始化,设置为0;反之,加 1
        if (count == null) {
            count = 0;
            servletContext.setAttribute("count", count);
        }

        int number = (int) count + 1;
        System.out.println("number: " + number);
        servletContext.setAttribute("count", number);

        //3.返回浏览器 Welcome
        response.getWriter().write("Welcome...." + number);
    }
}

启动 tomcat 服务,访问测试如下:

http://localhost:8080/demo01/count

image-20201228005910378

2.ShowServlet 实现读取 ServletContext 的 count 总计数

image-20201228010038457

代码语言:javascript
复制
@WebServlet(name = "ShowServlet", value = "/show")
public class ShowServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        // 1. 读取ServletContext中的count总次数
        ServletContext servletContext = getServletContext();
        int count = (int)servletContext.getAttribute("count");

        // 2. 返回浏览器访问的总次数
        response.setContentType("text/html; charset=UTF-8"); // 设置浏览器以utf8编码格式,不然中文显示为乱码
        response.getWriter().print("您是第 " + count + "  位访问的用户");
    }
}

访问 http://localhost:8080/demo01/show 测试如下:

image-20201228010109220

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-11-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 海洋的渔夫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 15. Servlet入门 - 统计网站被访问的总次数
    • 需求
      • 思路分析
        • 代码实现
          • 1.CountServlet 实现 count 总次数在 ServletContext 的 计数
          • 2.ShowServlet 实现读取 ServletContext 的 count 总计数
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档