Java의 쿠키에 대한 자세한 설명
Java의 쿠키 작동은 비교적 간단합니다. 주로 쿠키의 생성과 읽기, 쿠키의 수명 주기 설정 방법 및 쿠키의 경로를 소개합니다.
라이프사이클이 없는 쿠키, 즉 브라우저를 닫으면 사라지는 쿠키를 생성합니다. 코드는 다음과 같습니다
HttpServletRequest request HttpServletResponse response Cookie cookie = new Cookie("cookiename","cookievalue"); response.addCookie(cookie);
다음은 쿠키를 생성합니다.
cookie = new Cookie("cookiename","cookievalue"); cookie.setMaxAge(3600); //设置路径,这个路径即该工程下都可以访问该cookie 如果不设置路径,那么只有设置该cookie路径及其子路径可以访问 cookie.setPath("/"); response.addCookie(cookie);
쿠키를 읽는 방법은 다음과 같습니다.
Cookie[] cookies = request.getCookies();//这样便可以获取一个cookie数组 for(Cookie cookie : cookies){ cookie.getName();// get the cookie name cookie.getValue(); // get the cookie value }
위는 기본적인 쿠키 읽기 및 쓰기 작업입니다. 실제로는 쿠키를 추가하는 등 이를 캡슐화하는 것이 좋습니다. 쿠키의 이름, 값 및 수명 주기에 중점을 두므로 함수를 캡슐화하고 물론 응답 개체를 전달합니다.
/** * 设置cookie * @param response * @param name cookie名字 * @param value cookie值 * @param maxAge cookie生命周期 以秒为单位 */ public static void addCookie(HttpServletResponse response,String name,String value,int maxAge){ Cookie cookie = new Cookie(name,value); cookie.setPath("/"); if(maxAge>0) cookie.setMaxAge(maxAge); response.addCookie(cookie); }
쿠키를 읽을 때 작업을 용이하게 하기 위해 쿠키 이름을 제공하는 한 기능을 캡슐화하기를 바랍니다. , 쿠키의 값을 얻을 수 있습니다. 쿠키를 맵으로 캡슐화하는 것을 생각하기 쉽기 때문에 다음과 같이 캡슐화합니다.
/** * 根据名字获取cookie * @param request * @param name cookie名字 * @return */ public static Cookie getCookieByName(HttpServletRequest request,String name){ Map<String,Cookie> cookieMap = ReadCookieMap(request); if(cookieMap.containsKey(name)){ Cookie cookie = (Cookie)cookieMap.get(name); return cookie; }else{ return null; } } /** * 将cookie封装到Map里面 * @param request * @return */ private static Map<String,Cookie> ReadCookieMap(HttpServletRequest request){ Map<String,Cookie> cookieMap = new HashMap<String,Cookie>(); Cookie[] cookies = request.getCookies(); if(null!=cookies){ for(Cookie cookie : cookies){ cookieMap.put(cookie.getName(), cookie); } } return cookieMap; }
읽어주셔서 감사합니다. 모두에게 도움이 되기를 바랍니다. 모두 감사합니다. 이 사이트를 지원하세요!
Java 쿠키에 대한 자세한 설명과 간단한 예를 보려면 PHP 중국어 웹사이트를 참고하세요!