1. 程式人生 > >cookies 顯示用戶上次訪問的時間 學習筆記

cookies 顯示用戶上次訪問的時間 學習筆記

cookies 顯示用戶上次訪問的時間

  • Cookie.setMaxAge(72460*60)
  • Cookie.setPath(“/day0X”);
  • Httpwatch觀察
  • Cookie.setMaxAge(0)刪除同名Cookie
  • 
    import java.io.IOException;
    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;
    
    /*
     * http://localhost:8080/day07/Demo2?name=jack回車
     */
    public class Demo2 extends HttpServlet {
        public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
            String name = request.getParameter("name");
            if(name==null){
                name="default";
            }
    
            //取得客戶端的所有Cookie的值
            Cookie[] cookies = request.getCookies();
            if(cookies==null){
                Cookie cookie = new Cookie("name_"+name,System.currentTimeMillis()+"");
                cookie.setMaxAge(1*24*60*60);
                response.addCookie(cookie);
                response.setContentType("text/html;charset=UTF-8");
                response.getWriter().write("歡迎"+name+"首次光臨,訪問時間:" + new Date().toLocaleString());
            }else{
                //查找名為name的Cookie
                Cookie nameCookie = null;
                for(Cookie c : cookies){
                    if(c.getName().equals("name_"+name)){
                        nameCookie = c;
                        break;
                    }
                }
                //找到了
                if(nameCookie!=null){
                    String strTime = nameCookie.getValue();
                    response.setContentType("text/html;charset=UTF-8");
                    long lastTime = Long.parseLong(strTime);
                    response.getWriter().write("歡迎"+name+"再次光臨,你上次訪問時間:" + new Date(lastTime).toLocaleString());
                    //更新時間
                    Cookie cookie = new Cookie("name_"+name,System.currentTimeMillis()+"");
                    cookie.setMaxAge(1*24*60*60);
                    response.addCookie(cookie);
                }
            }
        }
    }
    

    cookies 顯示用戶上次訪問的時間 學習筆記