欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用JAVA类对Cookie的简单操作进行封装

程序员文章站 2024-03-20 13:55:34
...

使用JAVA类对Cookie的简单操作进行封装

简介

在使用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;
    }
}