第五章 会话及其会话技术
利用cookie技术显示用户上次的访问时间
创建一个名叫LastAccessServlet的servlet类,该类主要用于实现货物cookie信息并将当前时间作为Cookie值返回客户端
代码如下:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html;charset=utf-8");
String LastAccessTime = null;
Cookie[] cookies = request.getCookies();
for(int i=0;cookies != null&&i<cookies.length;i++) {
if("lastAccess".equals(cookies[i].getName())) {
// LastAccessTime = cookies[i].getValue();
LastAccessTime = URLDecoder.decode(cookies[i].getValue());
break;
}
}
if(LastAccessTime == null){
response.getWriter().print("您是首次访问本站!!!");
}else{
response.getWriter().print("您上次访问的时间是:"+LastAccessTime);
}
String currentTime= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date());
// Cookie cookie= new Cookie("LastAccess",currentTime);
Cookie cookie= new Cookie("LastAccess",URLEncoder.encode(currentTime));
response.addCookie(cookie);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
因为是首次访问所以
但是之后一直是这个界面,修改代码之后
import java.io.IOException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;