您的位置:首页 > 运维架构 > 网站架构

Servlet中统计网站访问量

2017-10-26 21:50 302 查看
统计网站访问量

访问量 放入到servletContext里,,setAttribute(“count”);

其他servlet获取该变量,然后进行自增

再重新放入到 servletContext

再把结果集显示页面上

package com.zhiyou.servlet.demo02;

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;

@WebServlet("/HServlet")
public class HServlet extends HttpServlet {

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

//       统计网站访问量
//       访问量 放入到servletContext里,,setAttribute("count");
//       其他servlet获取该变量,然后进行自增
//       再重新放入到 servletContext
//       再把结果集显示页面上

ServletContext context = this.getServletContext();
Integer count = (Integer) context.getAttribute("count");
if (count == null) {
// 第一次访问服务器
count = 1;
} else {
// 进行自增
count = count + 1;
}
// 把最新的count放到ServletContext里
context.setAttribute("count", count);

// 中文会乱码,需设置编码格式,必须在PrintWriter获取之前设置编码
resp.setContentType("text/html;charset=UTF-8");
//resp.setCharacterEncoding("UTF-8");

// 把统计数输出页面
PrintWriter writer = resp.getWriter();
writer.write("网站总访问数:" + count);

}
}


测试:http://localhost:8080/项目名/HServlet

例:

http://localhost:8080/week08_day04Demo/HServlet
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: