zoukankan      html  css  js  c++  java
  • 学习笔记5_Day09_网站访问量统计小练习

    练习:访问量统计

      一个项目中所有的资源被访问都要对访问量进行累加!

      创建一个int类型的变量,用来保存访问量,然后把它保存到ServletContext的域中,这样可以保存所有的Servlet都可以访问到!

        1、  最初时,ServletContext中没有保存访问量相关的属性;

        2、  当本站第一次被访问时,创建一个变量,设置其值为1;保存到ServletContext中;

        3、  当以后的访问时,就可以从ServletContext中获取这个变量,然后在其基础之上加1。 

        4、 获取ServletContext对象,查看是否存在名为count的属性,如果存在,说明不是第一次访问,如果不存在,说明是第一次访问;

    • 第一次访问:调用Servletcontext的setAttribute()传递一个属性,名为count,值为1;
    • 第2~N次访问:调用ServletContext的getAttribute()方法获取原来的访问量,给访问量加1,再调用Servletcontext的setAttribute()方法完成设置。 

      相信各位一定见过很多访问量统计的网站,即“本页面被访问过XXX次”。因为无论是哪个用户访问指定页面,都会累计访问量,

    所以这个访问量统计应该是整个项目共享的!很明显,这需要使用ServletContext来保存访问量。

           ServletContext application  = this.getServletContext();[崔1] 

           Integer count = (Integer)application.getAttribute("count")[崔2] ;

           if(count == null) {

               count = 1;[崔3] 

           } else {

               count++[崔4] ;

           }

           response.setContentType("text/html;charset=utf-8");

           response.getWriter().print("<h1>本页面一共被访问" + count + "次!</h1>")[崔5] ;

           application.setAttribute("count", count);[崔6] 


     [崔1]获取ServletContext对象

     [崔2]获取ServletContext对象中的count属性

     [崔3]如果在ServletContext中不存在count属性,那么设置count的值为1,表示第一次被访问。

     [崔4]如果在ServletContext中存在count属性,说明以前被访问过,那么让count在原来的基础上加1。

     [崔5]向客户端响应本页面被访问的次数。

     [崔6]保存count的值到ServletContext对象中。

    每天都做更好的自己,不纠结于输赢成败
  • 相关阅读:
    2017"百度之星"程序设计大赛
    2018省赛赛第一次训练题解和ac代码
    2018天梯赛第一次训练题解和ac代码
    rsa Round #71 (Div. 2 only)
    AtCoder Grand Contest 021
    Hello 2018
    Educational Codeforces Round 36 (Rated for Div. 2)
    Codeforces Round #462 (Div. 2)
    Codeforces Round #467 (Div. 2)
    [Offer收割]编程练习赛48
  • 原文地址:https://www.cnblogs.com/snowwhite/p/4542317.html
Copyright © 2011-2022 走看看