ServletContext示例:使用Servlet上下文保存访问人数

版权声明:未经王小波同学允许不得转载本文内容,否则将视为侵权;博主qq:1419758909;反正也没人转载~ https://blog.csdn.net/qq_38900441/article/details/83545588

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class IndexServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
 
    public IndexServlet() {
        super();
    }

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

		ServletContext ctx = this.getServletContext();
		synchronized(this){
			Integer counter = (Integer)ctx.getAttribute("UserNumber");
			int tmp = 0;
			if(counter==null){
				counter = new Integer(1);
			}else{
				tmp=counter.intValue()+1;
				counter = new Integer(tmp);
			}
			ctx.setAttribute("UserNumber", counter);
		}
		
		response.setContentType("text/html;charset=GBK");
		PrintWriter out = response.getWriter();
		out.println("<html>");
		out.println("<head><title>首页</title></head>");
		out.println("<body>");
		out.println("这是第一页<br>");
		out.println("<a href='UserName'>人数统计</a>");
		out.println("</body></html>");

		
	}


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

}


import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class UserName extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
   
    public UserName() {
        super();
    }

	
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		ServletContext ctx = this.getServletContext();
		Integer counter = (Integer)ctx.getAttribute("UserNumber");
		response.setContentType("text/html;charset=GBK");
		PrintWriter out = response.getWriter();
		out.println("<html>");
		out.println("<head><title>访问人数统计</title></head>");
		out.println("<body>");	
		if(counter!=null){
			out.println("已经有"+counter.intValue()+"人访问本网站");
		}
		else{
			out.println("你是第一个访问本网站的");
		}
		out.println("</body></html>");

	}

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

}

猜你喜欢

转载自blog.csdn.net/qq_38900441/article/details/83545588