Cookie操作Java工具類
import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;/**
- @author HuifengWang 操作cookie的工具類
*/ public class CookieUtil { /**
- 根據cookie的名稱獲取cookie
- @param request
- @param name
@return */ public static Cookie getCookie(HttpServletRequest request, String name) { Cookie cookies[] = request.getCookies(); if (cookies == null || name == null || name.length() == 0) {
return null;
} for (int i = 0; i < cookies.length; i++) {
if (name.equals(cookies[i].getName())){ //&& request.getServerName().equals(cookies[i].getDomain())) { return cookies[i]; }
} return null; }
public static String getCookieValue(HttpServletRequest request, String name){ Cookie ck = getCookie(request, name); if(ck!=null){
return PwdCrypt.decrypt(ck.getValue());
}else{
return null;
} }
/**
- 刪除cookie
- @param request
- @param response
@param cookie */ public static void deleteCookie(HttpServletRequest request,
HttpServletResponse response, Cookie cookie) {
if (cookie != null) {
cookie.setPath(getPath(request)); cookie.setValue(""); cookie.setMaxAge(0); response.addCookie(cookie);
} }
/**
- 設置cookie
- @param request
- @param response
- @param name
- @param value
如果不設置時間,默認永久 */ public static void setCookie(HttpServletRequest request,
HttpServletResponse response, String name, String value) {
setCookie(request, response, name, value, 0x278d00); }
/**
- @param request
- @param response
- @param name
- @param value
- @param maxAge
設置cookie,設定時間 */ public static void setCookie(HttpServletRequest request,
HttpServletResponse response, String name, String value, int maxAge) {
String cookieValue = PwdCrypt.encrypt(value); Cookie cookie = new Cookie(name, value == null ? "" : cookieValue.replaceAll("\r\n", "")); cookie.setMaxAge(maxAge); cookie.setPath(getPath(request)); response.addCookie(cookie); }
private static String getPath(HttpServletRequest request) { String path = request.getContextPath(); return (path == null || path.length() == 0) ? "/" : path; } public static void main(String[] args) {
} }</pre>