简介
在使用JSP写web项目时,总是会和Cookie打交道,所以就封装了一个Cookie的工具类,方便每次使用,只封装了最基础的几个操作,如果有错误还请大家帮忙指正。
相关知识
Cookie详解这个写的不错
方法表
方法名 | 作用 |
---|---|
addCookie(HttpServletResponse response, String key, String value, int age) | 添加Cookie |
addCookie(HttpServletResponse response, String key, String value, int age, String path) | 添加Cookie并设定Cookie路径 |
void removeCookie(HttpServletRequest request,HttpServletResponse response, String key) | 移除Cookie |
String getCookieValue(HttpServletRequest request, String key) | 得到Cookie的值 |
Cookie getCookie(HttpServletRequest request, String key) | 得到一个Cookie对象 |
boolean isCookieExist(HttpServletRequest request, String key) | 判断Cookie是否存在 |
参数表
参数名 | 含义 |
---|---|
request | 页面的request对象 |
response | 页面的response对象 |
key | 键 |
value | 值 |
age | Cookie存活时间 |
path | Cookie可作用路径 |
代码
package CookieManager;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
public class CookieOperation {
public static void addCookie(HttpServletResponse response, String key, String value, int age) {
Cookie myCookie = new Cookie(key, value);
myCookie.setMaxAge(age);
response.addCookie(myCookie);
}
public static void addCookie(HttpServletResponse response, String key, String value, int age, String path) {
Cookie myCookie = new Cookie(key, value);
myCookie.setMaxAge(age);
myCookie.setPath(path);
response.addCookie(myCookie);
}
public static void removeCookie(HttpServletRequest request,HttpServletResponse response, String key) {
Cookie myCookie=getCookie(request,key);
if(myCookie!=null) {
myCookie.setMaxAge(0);
response.addCookie(myCookie);
}
}
public static String getCookieValue(HttpServletRequest request, String key) {
Cookie myCookie=getCookie(request,key);
if(myCookie==null)return "null";
else return myCookie.getValue();
}
public static Cookie getCookie(HttpServletRequest request, String key) {
Cookie[] cs = request.getCookies();
for (Cookie i : cs) {
if (i.getName().equals(key)) {
return i;
}
}
return null;
}
public static boolean isCookieExist(HttpServletRequest request, String key) {
Cookie[] cs = request.getCookies();
for (Cookie i : cs) {
if (i.getName().equals(key)) {
return true;
}
}
return false;
}
}