Backend/Spring
Spring - 쿠키 생성/삭제/가져오기
둉이
2021. 12. 9. 05:10
Spring에서의 쿠키 생성과 삭제는 HttpServletResponse 객체를 통해 이루어진다.
쿠키 생성
import javax.servlet.http.Cookie;
@RequestMapping(value = "/admin/adminLoginProcess.do", method = RequestMethod.POST)
public ModelAndView login(HttpServletRequest req, HttpServletResponse response, ModelAndView mv) throws Exception {
Cookie myCookie = new Cookie("userID", (String) params.get("id"));
myCookie.setMaxAge(24 * 30 * 60 * 60 * 1000); // 30일동안 유효
response.addCookie(myCookie);
}
쿠키 삭제
import javax.servlet.http.Cookie;
@RequestMapping(value = "/admin/adminLoginProcess.do", method = RequestMethod.POST)
public ModelAndView login(HttpServletRequest req, HttpServletResponse response, ModelAndView mv) throws Exception {
Cookie myCookie = new Cookie("userID", null); // 쿠키 값을 null로 설정
myCookie.setMaxAge(0); // 남은 만료시간을 0으로 설정
response.addCookie(myCookie);
}
생성된 쿠키는 HttpServletRequest 객체를 통해 가져올 수 있다.
@RequestMapping(value = "/admin/adminLoginForm.do")
public ModelAndView adminLoginForm(HttpServletRequest req, ModelAndView mv) throws Exception {
Cookie[] cookies = req.getCookies();
for(Cookie c : cookies) {
sout(c.getName()); // 쿠키 이름 가져오기
sout(c.getValue()); // 쿠키 값 가져오기
}
}