package com.kingschan.blog.util; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * * <pre> * 类名称:CookieUtil * 类描述: cookie 操作便捷类 * 创建人:陈国祥 (kingschan) * 创建时间:2013-4-3 * 修改人:Administrator * 修改时间:2014-7-31 上午11:41:39 * 修改备注: * @version V1.0 * </pre> */ public class CookieUtil { private HttpServletRequest request; private HttpServletResponse response; public CookieUtil(HttpServletRequest request,HttpServletResponse response){ this.request=request; this.response=response; } /** * 得到cookie数组 * @return cookie[] */ public Cookie[] getCookies(){ Cookie[] cs=this.getRequest().getCookies(); return cs; } /** * 传入一个cookie键 删除一个cookie * @param domain sample:.51so.info * @param key */ public void removeCookie(String domain,String key){ Cookie[] cs=this.getRequest().getCookies(); for (Cookie cookie : cs) { if (cookie.getName().equals(key)) { cookie = new Cookie(key, null); cookie.setDomain(domain); cookie.setMaxAge(0); cookie.setPath("/"); this.getResponse().addCookie(cookie); } } } /** * 根据一个cookie的名字得到cookie值 * <font style="color:red;">如果没有找到则返回null</font> * @param key cookie的名字 * @return cookie的值 */ public String getCookieAttribute(String key){ Cookie[] cs=getCookies(); String target=null; if (null==cs) { return null; } for (Cookie cookie : cs) { if (cookie.getName().equals(key)) { target=cookie.getValue(); } } return target; } /** * 添加一个cookie对象 * @param name cookie名字 * @param value cookie值 * @param age cookie的存活期 已秒为单位 */ public void setCookieAttribute(String name,String value,int age,String path,String domain){ Cookie c = new Cookie(name, value); c.setMaxAge(age); c.setPath(path); c.setDomain(domain); getResponse().addCookie(c); } public HttpServletRequest getRequest() { return request; } public void setRequest(HttpServletRequest request) { this.request = request; } public HttpServletResponse getResponse() { return response; } public void setResponse(HttpServletResponse response) { this.response = response; } }