Servlet和Session統計訪問次數

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;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class LoginServletTest
 */
@WebServlet("/LoginServletTest2")
public class SessionCounter 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);
		HttpSession session = request.getSession(true);
		Object counter = session.getAttribute("Counter");
		int count = 0;
		if (counter == null) {
			response.setContentType("text/html;charset=utf8");
			request.setCharacterEncoding("utf8");
			response.getWriter().println("<p>這是你第一次訪問本頁<p>");
			count = 1;
			session.setAttribute("Counter", new Integer(1));
		} else {
			count = ((Integer) counter).intValue();
			count++;
			session.setAttribute("Counter", new Integer(count));
			response.setContentType("text/html;charset=utf8");
			request.setCharacterEncoding("utf8");
			response.getWriter().println("<p>這是你第</p>" + count + "<p>次訪問本頁<p>");
		}
	}

	/**
	 * @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>");

	}

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章