예제를 포함한 JSP의 쿠키
쿠키는 무엇입니까?
- 쿠키는 클라이언트 컴퓨터에 저장되는 텍스트 파일입니다.
- 이는 다양한 목적으로 정보를 추적하는 데 사용됩니다.
- 서블릿 기술을 사용하여 HTTP 쿠키를 지원합니다.
- 쿠키는 HTTP 헤더에 설정됩니다.
- 브라우저가 쿠키를 저장하도록 구성된 경우 만료일까지 정보가 유지됩니다.
JSP의 쿠키 유형
- 영구 쿠키: 영구 쿠키는 일정 기간 동안 사용자의 기기에 저장되어 웹사이트가 사용자의 기본 설정과 로그인 정보를 기억하는 데 도움이 됩니다.
- 비영구 쿠키: 비영구 쿠키는 일시적이며 브라우저를 닫으면 삭제되며, 주로 세션 추적에 사용됩니다.
JSP 쿠키 방법
쿠키 방법은 다음과 같습니다.
-
공개 무효 setDomain(문자열 도메인)
이 JSP 세트 쿠키는 쿠키가 적용되는 도메인을 설정하는 데 사용됩니다.
-
공개 문자열 getDomain()
이 JSP 가져오기 쿠키는 쿠키가 적용되는 도메인을 가져오는 데 사용됩니다.
-
공개 무효 setMaxAge(int 만료)
쿠키가 만료될 때까지 적용되어야 하는 최대 시간을 설정합니다.
-
공개 intgetMaxAge()
JSP에서 쿠키의 최대 수명을 반환합니다.
-
공개 문자열 getName()
쿠키의 이름을 반환합니다.
-
공개 무효 setValue(문자열 값)
쿠키와 관련된 값을 설정합니다.
-
공개 문자열 getValue()
쿠키와 관련된 값을 가져옵니다.
-
공개 무효 setPath(문자열 경로)
JSP의 이 쿠키 설정은 쿠키가 적용되는 경로를 설정합니다.
-
공개 문자열 getPath()
쿠키가 적용되는 경로를 가져옵니다.
-
Public void setSecure(부울 플래그)
암호화된 연결을 통해 전송되어야 하는지 여부입니다.
-
공개 무효 setComment(문자열 cmt)
쿠키 목적을 설명합니다.
-
공개 문자열 getComment()
설명된 쿠키 주석을 반환합니다.
JSP에서 쿠키를 처리하는 방법
- 쿠키 객체 생성
- 최대 연령 설정
- HTTP 응답 헤더로 쿠키 보내기
예시
이 JSP 쿠키 예제에서는 사용자 이름과 이메일의 쿠키를 생성하고 10시간 동안 쿠키에 age를 추가하고 action_cookie.jsp에서 변수 이름을 가져오는 방법을 통해 JSP에서 쿠키 생성자를 호출하는 방법을 알아봅니다.
Action_cookie.jsp.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Cookie</title>
</head>
<body>
<form action="action_cookie_main.jsp" method="GET">
Username: <input type="text" name="username">
<br />
Email: <input type="text" name="email" />
<input type="submit" value="Submit" />
</form>
</body>
</html>
Action_cookie_main.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
Cookie username = new Cookie("username",
request.getParameter("username"));
Cookie email = new Cookie("email",
request.getParameter("email"));
username.setMaxAge(60*60*10);
email.setMaxAge(60*60*10);
// Add both the cookies in the response header.
response.addCookie( username );
response.addCookie( email );
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Cookie JSP</title>
</head>
<body>
<b>Username:</b>
<%= request.getParameter("username")%>
<b>Email:</b>
<%= request.getParameter("email")%>
</body>
</html>
코드 설명
Action_cookie.jsp
코드 라인 10-15: 여기서 우리는 action_cookie_main.jsp에서 처리해야 하는 폼을 취하고 있습니다. 또한, 우리는 제출 버튼을 사용하여 사용자로부터 입력을 받아야 하는 두 개의 필드 "username"과 "email"을 취하고 있습니다.
Action_cookie_main.jsp
코드 라인 6-9: request.getParameter를 사용하여 "username"과 "email"의 두 개의 쿠키 객체를 생성합니다.
코드 라인 12-13: 여기서는 10시간으로 생성된 두 쿠키에 연령을 추가합니다. 즉, 쿠키는 해당 연령 후에 만료됩니다.
코드 라인 16-17: 사용자 이름과 이메일의 세션에 쿠키를 추가하면 getParameter()에서 요청 시 이 두 쿠키를 가져올 수 있습니다.
산출
위 코드를 실행하면 다음과 같은 출력이 나옵니다.
action_cookie.jsp를 실행하면 username과 email이라는 두 개의 필드를 얻고, 사용자 입력을 받은 다음 제출 버튼을 클릭합니다. action_cookie_main.jsp에서 출력을 얻고, 여기서 변수는 클라이언트 측의 쿠키 JSP에 저장됩니다.


