Cookie類全路徑:javax.servlet.http.Cookie
Cookie是Servlet發送到Web瀏覽器的少量信息,這些信息由瀏覽器保存,然后發送回服務器,cookie的值可以唯一地標識客戶端,因此常用于會話管理。一個cookie有一個名稱,一個值,一些可選屬性(他們都是String類型,cookie只能存字符串)。瀏覽器可以支持每一個服務器有20個cookie,一個瀏覽器總共有300個cookie,一個cookie最大是4kb。Cookie是一種客戶端技術。
一、方法
1.Cookie類的構造函數 用來創建一個Cookie
Cookie ck=new Cookie(name ,value );
2.response接口中定義了一個addCookie方法,用于在相應頭中添加Set-Cookie字段(將指定cookie響應到客戶端)。
response.addCookie (ck);
3.request接口定義了一個getCookie方法,用于獲取客戶端提交的Cookie。
Cookie[] cookies=request.getCookies();
二、屬性(都有get/set方法)
1.name
名稱不能唯一確定一個Cookie,因為路徑可能不同。
2.value
不能存中文。
3.maxAge
創建一個Cookie并把它發送給瀏覽器,它默認是會話級別的,存在于瀏覽器的內存中,瀏覽器關閉即銷毀。
若想把它存到磁盤上(緩存),需要設置maxAge,單位是秒,表示關閉瀏覽器后,Cookie在磁盤上存在的時間。它的默認值是-1,表示關閉瀏覽器時銷毀;如果把它設為0,則表示立刻銷毀(刪除Cookie時,path必須一致,否則無效)。
一旦cookie存到了磁盤上,就可以用另外一個瀏覽器以相同的路徑訪問到它。
例如:ck.setMaxAge(60*5);
4.path
默認值是寫cookie那個程序的訪問路徑(到servlet)。客戶端訪問服務器時,根據其訪問路徑決定帶不帶cookie到服務器,如果它訪問的路徑是以cookie路徑開頭的,就帶,否則不帶。