當前位置:才華齋>計算機>java語言>

java設定cookie方法流程

java語言 閱讀(1.55W)

引導語: Cookie有時也用其複數形式Cookies,指某些網站為了辨別使用者身份、進行session跟蹤而儲存在使用者本地終端上的資料(通常經過加密)。以下是小編整理的java設定cookie方法流程,歡迎參考閱讀!

java設定cookie方法流程

java設定cookie方法流程:

java對cookie的操作比較簡單,主要介紹下建立cookie和讀取cookie,以及如何設定cookie的生命週期和cookie的路徑問題。

建立一個無生命週期的cookie,即隨著瀏覽器的關閉即消失的'cookie,程式碼如下

--------------------------------

HttpServletRequest request

HttpServletResponse response

Cookie cookie = new Cookie("cookiename","cookievalue");

ookie(cookie);

--------------------------------

下面建立一個有生命週期的cookie,可以設定他的生命週期

--------------------------------

cookie = new Cookie("cookiename","cookievalue");

axAge(3600);

//設定路徑,這個路徑即該工程下都可以訪問該cookie 如果不設定路徑,那麼只有設定該cookie路徑及其子路徑可以訪問

ath("/");

ookie(cookie);

--------------------------------

下面介紹如何讀取cookie,讀取cookie程式碼如下

--------------------------------

Cookie[] cookies = ookies();//這樣便可以獲取一個cookie陣列

for(Cookie cookie : cookies){

ame();// get the cookie name

alue(); // get the cookie value

}

--------------------------------

上面就是基本的讀寫cookie的操作。我們在實際中最好進行一下封裝,比如增加一個cookie,我們關注的是cookie的name,value,生命週期,所以進行封裝一個函式,當然還要傳入一個response物件,addCookie()程式碼如下

--------------------------------

/**

* 設定cookie

* @param response

* @param name cookie名字

* @param value cookie值

* @param maxAge cookie生命週期 以秒為單位

*/

public static void addCookie(HttpServletResponse response,String name,String value,int maxAge){

Cookie cookie = new Cookie(name,value);

ath("/");

if(maxAge>0) axAge(maxAge);

ookie(cookie);

}

--------------------------------

讀取cookie的時候,為了方便我們的操作,我們希望封裝一個函式,只要我們提供cookie的name,我們便可以獲取cookie的value,帶著這個想法,很容易想到將cookie封裝到Map裡面,於是進行下面的封裝

--------------------------------

/**

* 根據名字獲取cookie

* @param request

* @param name cookie名字

* @return

*/

public static Cookie getCookieByName(HttpServletRequest request,String name){

Map cookieMap = ReadCookieMap(request);

if(ainsKey(name)){

Cookie cookie = (Cookie)(name);

return cookie;

}else{

return null;

}

}

/**

* 將cookie封裝到Map裡面

* @param request

* @return

*/

private static Map ReadCookieMap(HttpServletRequest request){

Map cookieMap = new HashMap();

Cookie[] cookies = ookies();

if(null!=cookies){

for(Cookie cookie : cookies){

(ame(), cookie);

}

}

return cookieMap;

}

--------------------------------