package cn.itcast.servlet;
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 VisitTimes
*/
//该注解的作用等价于 在web.xml中配置的该servlet的<servlet-mapping>元素中<url-pattern>的配置
@WebServlet("/VisitTimes")
public class VisitTimes extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public VisitTimes() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
ServletContext context = getServletContext();
/*
* Integer是java为int提供的封装类
Integer的默认值为null
即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况
*/
Integer times = (Integer)context.getAttribute("times");
if(times == null) {
times = new Integer(1);
}else {
times = new Integer(times.intValue() + 1);
}
//设置HTML
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>");
out.println("页面访问统计");
out.println("</title></head><body>");
out.println("当前网页被访问了");
out.println("<font color=red size=20px>"+times+"</font>次");
//设置ServletContext的域属性,在这里就是设置times
context.setAttribute("times", times);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(request, response);
}
}
编写一个servlet,实现统计网站被访问次数
猜你喜欢
转载自blog.csdn.net/lmhnba/article/details/108833969
今日推荐
周排行