Servlet和Cookie统计访问次数

package com.servlet;

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

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class LoginServletTest
 */
@WebServlet("/LoginServletTest")
public class CookieCounter extends HttpServlet {
	private static final long serialVersionUID = 1L;
	
	/**
	 * @throws IOException
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request, 
			HttpServletResponse response) throws ServletException, IOException {
		// PrintWriter out = response.getWriter(); IOException {
		// TODO Auto-generated method stub
		// doPost(request, response);
		boolean blnFound = false;
		Cookie myCookie = null;
		Cookie[] cookies = request.getCookies();
		if (null != cookies) {
			for (Cookie cookie : cookies) {
				if (cookie.getName().equals("logincount")) {
					blnFound = true;
					myCookie = cookie;
					break;
				}
			}
		}
		if (blnFound) {
			int temp = Integer.parseInt(myCookie.getValue());
			temp++;
			response.setContentType("text/html;charset=utf8");
			request.setCharacterEncoding("utf8");
			response.getWriter().println("<p>你访问本页的次数是:<p>" + temp);
			myCookie.setValue(String.valueOf(temp));
			int age = 60 * 60 * 24 * 30;
			myCookie.setMaxAge(age);
			response.addCookie(myCookie);
		} else {
			int temp = 1;
			response.getWriter().println("<p>这是你第一次访问本页<p>");
			myCookie = new Cookie("logincount", String.valueOf(temp));
			int age = 60 * 60 * 24 * 30;
			myCookie.setMaxAge(age);
			response.addCookie(myCookie);
		}
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		response.setContentType("text/html;charset=utf-8");
		request.setCharacterEncoding("utf-8");
		String name = request.getParameter("name");
		String passs = request.getParameter("pass");
		PrintWriter out = response.getWriter();
		out.println("<HTML>");
		out.println("  <HEAD><TITLE>用户登录</TITLE></HEAD>");
		out.println("  <BODY>");
		if ("123".equals(passs)) {// 假设的合法用户名及密码
			out.print("<h2>用户登录成功</h2>");
		} else {
			out.print("<h2>用户或密码错误,登录失败</h2>");
		}
		out.println("  </BODY>");
		out.println("</HTML>");

	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值