package com;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* 统计访问量
* Servlet implementation class AServlet
*/
@WebServlet("/AServlet")
public class AServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
/*
* 1.获取ServletContext对象
* 2.从ServletContext对象中获取名为count的属性
* 3.如存在,则给访问量加1,再保存回去
* 4.如果不存在,说明是第一次访问,向ServletContext中保存名为count的属性,值为1
*/
ServletContext app=this.getServletContext();
Integer count=(Integer)app.getAttribute("count");
if(count==null) {
app.setAttribute("count", 1);
}else {
app.setAttribute("count", count+1);
}
/*
* 向浏览器输出
* 需要用到响应对象
*/
PrintWriter out=response.getWriter();
out.print("<h1>"+count+"</h1>");
response.getWriter().append("Served at: ").append(request.getContextPath());
}
}
运行结果: