servlet web之会话管理

 

cookie应用 显示客户上次的登陆时间和删除上次访问时间 

package cn.cast.cookie;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;

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

//代表网站首页 
public class CookieDemo1 extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		response.setCharacterEncoding("utf-8");//第一句,设置服务器端编码
		response.setContentType("text/html;charset=utf-8");//第二句,设置浏览器端解码
		PrintWriter writer = response.getWriter();
		writer.print("<a href='/web2/servlet/DeleteCookie'>清除上次访问时间</a><br>");
		writer.print("您上次的访问时间是:");
		
		//获得用户的时间cookie
		Cookie cookies[] = request.getCookies();
		for (int i=0;cookies !=null&&i<cookies.length;i++){
			if(cookies[i].getName().equals("lastacesstime")){
				
				long cookietime = Long.parseLong(cookies[i].getValue());//得到用户的访问时间 
				Date date = new Date(cookietime);
				writer.print(date.toLocaleString());
			}
			
			
		}
		//给用户返回   服务器创建cookie给客户端 
		Cookie cookie = new Cookie("lastacesstime", System.currentTimeMillis()+"");
		cookie.setMaxAge(1*30*24*3600);
		cookie.setPath("/web2");
		
		response.addCookie(cookie);
	}


	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}

}
package cn.cast.cookie;

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

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

public class DeleteCookie extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
        //需要设置同名cookie并且必要的参数要相同 cookie.setPath
		Cookie cookie = new Cookie("lastacesstime",System.currentTimeMillis()+"");
		cookie.setMaxAge(0);
		cookie.setPath("/web2");
		response.addCookie(cookie);
		response.sendRedirect("/web2/servlet/CookieDemo1");
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}

}

猜你喜欢

转载自blog.csdn.net/qq_38125626/article/details/83376941
今日推荐