好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Servlet实现统计页面访问次数功能

本文实例为大家分享了Servlet实现统计页面访问次数的具体代码,供大家参考,具体内容如下

实现思路:

1.新建一个CallServlet类继承HttpServlet,重写doGet()和doPost()方法;

2.在doPost方法中调用doGet()方法,在doGet()方法中实现统计网站被访问次数的功能,用户每请求一次servlet,使得访问次数times加1;

3.获取ServletContext,通过它的功能记住上一次访问后的次数。

在web.xml中进行路由配置:

?

1

2

3

4

5

6

7

8

9

10

<!-- 页面访问次数 -->

   < servlet >

     < servlet-name >call</ servlet-name >

     //CallServlet为处理前后端交互的后端类

     < servlet-class >CallServlet</ servlet-class > 

   </ servlet >

   < servlet-mapping >

     < servlet-name >call</ servlet-name >

     < url-pattern >/call</ url-pattern >

</ servlet-mapping >

CallServlet类:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

import javax.servlet.ServletContext;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import java.io.IOException;

import java.io.PrintWriter;

 

/**

  * Created with IntelliJ IDEA

  * Details about unstoppable_t:

  * User: Administrator

  * Date: 2021-04-07

  * Time: 14:57

  */

 

//获得网站被访问的次数

public class CallServlet extends HttpServlet {

     private static final long serialVersionUID = 1L;

     @Override

     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

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

         ServletContext context = getServletContext();

         Integer times = (Integer) context.getAttribute( "times" );

         if (times == null ) {

             times = new Integer( 1 );

         } else {

             times = new Integer(times.intValue() + 1 );

         }

         PrintWriter out= resp.getWriter();

         out.println( "<html><head><title>" );

         out.println( "页面访问统计" );

         out.println( "</title></head><body>" );

         out.println( "当前页面被访问了" );

         out.println( "<font color=red size=20>" +times+ "</font>次" );

         context.setAttribute( "times" ,times);

     }

 

     @Override

     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

         this .doGet(req,resp);

     }

}

前端展示结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

原文链接:https://blog.csdn.net/weixin_44874269/article/details/115487251

查看更多关于Servlet实现统计页面访问次数功能的详细内容...

  阅读:17次