标签:
Cookie应用:显示用户上次访问时间
package com.itheima.cookie;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebInitParam;
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 com.itheima.myConstant;
/**
* Servlet implementation class CookieDemo2
*/
@WebServlet(
urlPatterns = { "/CookieDemo1" },
initParams = {
@WebInitParam(name = "CookieDemo1", value = "com.itheima.cookie.CookieDemo1")
})
/*
* Cookie是客户端技术,程序把每个用户的数据以Cookie的形式写给用户的各自的浏览器,
* 当用户使用浏览器再去访问服务器中的web资源时,这样,web资源处理的就是用户各自的数据了,
* 在购物时,每个用户的数据都用各自的Cookie存储,互不影响。
*/
public class CookieDemo1 extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//设置编码
response.setContentType("text/html;charset=utf-8");
PrintWriter out=response.getWriter();//得到输出流,写提示信息
out.write("您上次访问的时间为");
//从客户端请求中获取指定的Cookie
Cookie[] cookies=request.getCookies();
for(int i=0;cookies!=null&&i<cookies.length;i++){
Cookie cookie=cookies[i];
if(myConstant.LAST_ACCESS_TIME.equals(cookie.getName())){
//输出值
long value=Long.parseLong(cookie.getValue());
out.println(new Date(value).toLocaleString());
}
}
//把当前的时间给客户端
Cookie c=new Cookie(myConstant.LAST_ACCESS_TIME,System.currentTimeMillis()+"");
c.setPath(request.getContextPath());
c.setMaxAge(10*24*60*60);//存活时间,默认为浏览器进程
response.addCookie(c);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response);
}
}
标签:
原文地址:http://www.cnblogs.com/lzzhuany/p/4701724.html