1、 什麼是Cooki
通俗點講:Cookies是一種能夠讓網站服務器把少量數據儲存到客戶端的硬盤或內存,或是從客戶端的硬盤讀取數據的一種技術。Cookies是當你瀏覽某網站時,由Web服務器置於你硬盤上的一個非常小的文本文件,它可以記錄你的用戶ID、密碼、瀏覽過的網頁、停留的時間等信息。
當你再次來到該網站時,網站通過讀取Cookies,得知你的相關信息,就可以做出相應的動作,如在頁面顯示歡迎你的標語,或者讓你不用輸入ID、密碼就直接登錄等等
Cookies文件是在無聲無息中伴隨瀏覽器進入我們本地硬盤的,當我們瀏覽某個站點時,該站點很可能將記錄我們隱私的cookies文件上傳到本地硬盤。那麼我們如何防範阻止cookies文件泄露我們的隱私呢?實際上我們可以通過瀏覽器設置不容許計算機接收cookies文件即可。方法如下:
第一步:進入系統打開IE瀏覽器。
第二步:通過菜單欄中的“工具->internet選項”打開internet設置窗口。
第三步:找到“隱私”標籤,將設置的滑動按鈕調節到最高,這樣將阻止來自所有網站的cookie,而且計算機上的現有cookie文件都將不能被網站讀取
第四步:確定後我們完成設置,任何站點都不會將cookie文件強制塞入我們的計算機。這樣我們的隱私也不會再泄露了。爲防止我們的隱私泄露,你也可以刪除cookies.
2、 如何刪除Cookies?下面將刪除Cookies的辦法告知大家:
(1).先打開IE或TT的瀏覽器。
(2).點擊頁面最上方一行中的“工具”。
(3).在拉出的菜單裏用鼠標點擊“internet”選項。
(4).在彈出的對話框裏用鼠標點擊“刪除Cookies”選項。
(5).在又一個彈出的小對話框裏用鼠標點擊“確定”後,這個對話框就消失了。
(6).再繼續點擊留下的原來的對話框下方的“確定”。
這樣,就算刪除完Cookies了。
3、在Servlet程序中使用Cookie
代碼及其分析:
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
public class TestCookie extends HttpServlet{
public voiddoGet(HttpServletRequest request, HttpServletResponse response)
throwsServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriterout = response.getWriter();
/*首先從請求的消息中將用戶賬號、暱稱獲取到*/
Stringname=request.getParameter("name,");
StringnickName=request.getParameter("nickName");
/*在這兩個不爲空的時候進行登錄*/
if(name==null||nickName==null){
out.println("請輸入姓名和暱稱");
return;
}
/*創建Cookie對象,用來保存會話狀態信息的*/
Cookiecookie1=new Cookie("name",name);
/*Cookie的有效期*/
cookie1.setMaxAge(24*60*60);
Cookiecookie2=new Cookie("nickName",nickName);
/*將生成的cookie對象添加到響應消息頭字段中*/
response.addCookie(cookie1);
response.addCookie(cookie2);
out.println("歡迎訪問本servlet");
out.flush();
out.close();
}
4、幫助文檔:Cookie類的使用
在Http子包下:
5、設置Cookie
Internet選項 隱私 高級
6在Servlet程序中使用Cookie:
ServletAPI中提供了一個javax.servlet.http.Cookie類來封裝Cookie信息,它包含有生成Cookie信息和提取Cookie信息的各個屬性的方法。
Cookie類的方法:
a) 構造方法: public Cookie(java.lang.String name,java.lang.String value)
b) getName方法
c) setValue與getValue方法
d) setMaxAge與getMaxAge方法
e) setPath與getPath方法
f) setDomain與getDomain方法
g) setVersion與getVersion方法
h) setComment與getComment方法
i) setSecure與getSecure方法
HttpServletResponse接口中定義了一個addCookie方法,它用於在發送給瀏覽器的HTTP響應消息中增加一個Set-Cookie響應頭字段。
HttpServletRequest接口中定義了一個getCookies方法,它用於從HTTP請求消息的Cookie請求頭字段中讀取所有的Cookie項。