功能:cookie的添加、刪除、獲取值
1 import java.io.UnsupportedEncodingException; 2 import java.net.URLDecoder; 3 4 import javax.servlet.http.Cookie; 5 import javax.servlet.http.HttpServletRequest; 6 import javax.servlet.http.HttpServletResponse; 7 8 /** 9 * 常用cookie處理方法工具類 10 */ 11 public class CookieUtil { 12 13 /** 14 * 添加cookie 15 * @param response 16 * @param key cookie主鍵 17 * @param value cookie值 18 */ 19 public static void addCookie(HttpServletResponse response, String key, String value){ 20 Cookie cookie = new Cookie(key, value); 21 cookie.setPath("/");// 這個要設置 22 cookie.setMaxAge(60*60*24*30);//保留一個月 以秒為單位 23 response.addCookie(cookie); 24 } 25 26 /** 27 * 刪除cookie 28 * @param request 29 * @param response 30 * @param key cookie主鍵 31 */ 32 public static void deleteCookie(HttpServletRequest request, HttpServletResponse response, String key){ 33 Cookie cookies[] = request.getCookies(); 34 if (cookies != null) { 35 for (int i = 0; i < cookies.length; i++) { 36 if (cookies[i].getName().equals(key)) { 37 Cookie cookie = new Cookie(key,null); 38 cookie.setPath("/");//設置成跟寫入cookies一樣的 39 cookie.setMaxAge(0); 40 response.addCookie(cookie); 41 } 42 } 43 } 44 } 45 46 /** 47 * 取得cookie的值 48 * @param request 49 * @param key cookie主鍵 50 */ 51 public static String getCookieValue(HttpServletRequest request, String key) throws UnsupportedEncodingException{ 52 for(Cookie cookie : request.getCookies()){ 53 if (cookie.getName().equals(key)) { 54 return URLDecoder.decode(cookie.getValue(), "UTF-8"); 55 } 56 } 57 return null; 58 } 59 }