利用cookie獲得上次訪問時間

                                                

Cookie是客戶端技術,程序把每個用戶的數據以cookie的形式寫給用戶各自的瀏覽器。當用戶使用瀏覽器再去訪問服務器中的web資源時,就會帶着各自的數據去。這樣,web資源處理的就是用戶各自的數據了。

     

      /*上次訪問時間*/

      //得到上次訪問的cookie對象

      Cookie cookies[] = request.getCookies();

      //遍歷得到的cookie數組

      for(int i=0;cookies!=null&&i<cookies.length;i++){

        Cookie cookie = cookies[i];

        //判斷返回的cookie是否是上次訪問的

        if("lastTime".equals(cookie.getName())){

           String lastTime = cookie.getValue();

           Date date = new Date(Long.parseLong(lastTime));

           out.print(date.toLocaleString());

        }

      }

     

     

      /*保存這次訪問的時間*/

      //創建cookie對象

      Cookie ck = new Cookie("lastTime",System.currentTimeMillis()+"");

     

      /*關閉瀏覽器後,cookie對象在緩存中的存在時間

       * 只針對/Test20111024/servlet/demo01路徑對應的cookie對象來說

       * setMaxAge()中的參數是以秒計算的*/

      ck.setMaxAge(3600);

      ck.setPath("/Test20111024/servlet/demo01");

     

      //將該cookie對象添加到回送信息中

      response.addCookie(ck);

一個Cookie只能標識一種信息,它至少含有一個標識該信息的名稱(NAME)和設置值(VALUE)。

一個WEB站點可以給一個WEB瀏覽器發送多個Cookie,一個WEB瀏覽器也可以存儲多個WEB站點提供的Cookie。

一個瀏覽器一般只允許存放300個Cookie,每個站點最多存放20個Cookie,每個Cookie的大小限制爲4KB。

如果創建了一個cookie,並將他發送到瀏覽器,默認情況下它是一個會話級別的cookie(即存儲在瀏覽器的內存中),用戶退出瀏覽器之後即被刪除。若希望瀏覽器將該cookie存儲在磁盤上,則需要使用maxAge,並給出一個以秒爲單位的時間。將最大時效設爲0則是命令瀏覽器刪除該cookie。

注意,刪除cookie時,path必須一致,否則不會刪除

 

發佈了62 篇原創文章 · 獲贊 7 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章