서블릿에서 쿠키 사용하기
1. GetCookieValue, setCookieVale 클래스 파일을 준비합니다.

2. SetCookieValue 쿨래수를 다음과 같이 작성합니다. Cookie 객체를 생성한 후 쿠키 이름을 cookieTest로 값을 저장합니다. 그리고 setMaxAge() 메서드에 쿠키 유효 시간을 24시간으로 설정합니다. 그런 다음 response와 addCookie() 메서드를 이용해 생성된 쿠키를 브라우저로 전송합니다.
package sec02.ex01;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLEncoder;
import java.util.Date;
@WebServlet("/set")
public class SetCookieValue extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
Date d = new Date();
Cookie c = new Cookie("cookieTest", URLEncoder.encode("JSP 프로그래밍입니다.", "utf-8"));
c.setMaxAge(24*60*60);
response.addCookie(c);
out.println("현재시간 : " + d);
out.println("문자열을 Cookie에 저장합니다.");
}
}
3. GetCookieValue 쿨래스를 다음과 같이 작성합니다. 두 번째 서블릿 요청 시에는 request의 getCookies() 메서드를 호출해 브라우저로 전달받습니다. 그리고 전달된 쿠키에서 저장할 때 사용할 이름인 cookieTest로 검색해 값을 가져옵니다.
package sec02.ex01;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLDecoder;
import java.net.URLEncoder;
@WebServlet("/get")
public class GetCookieValue extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
Cookie[] allValues = request.getCookies();
for (int i = 0; i < allValues.length; i++) {
if (allValues[i].getName().equals("cookieTest")) {
out.println("<h2>Cookie 값 가져오기 : " + URLDecoder.decode(allValues[i].getValue(), "utf-8"));
}
}
}
}
4. 우선 set으로 첫 번째 서블릿을 요청합니다. 쿠키에 cookieTest 이름으로 저장합니다.

5. get으로 두 번째 서블릿을 요청하여 cookieTest로 쿠키 값을 가져와 브라우저에 출력합니다.

'프로그래밍 언어 > 자바 웹' 카테고리의 다른 글
| 세션 쿠키 사용하기 (2) | 2025.07.28 |
|---|---|
| 세션 쿠키 사용하기 (1) | 2025.07.25 |
| 쿠키 API (1) | 2025.07.22 |
| 쿠키를 이용한 웹 페이지 연동 기능 & 쿠키 기능 실행 과정 (0) | 2025.07.19 |
| URL Rewriting을 이용한 세션 트래킹 실습 (1) | 2025.07.16 |