JSP 공부 기록(6)-쿠키(Cookie), 아이디 저장 기능 로그인 예제
my code archive
article thumbnail
반응형
쿠키(Cookie)

URL Rewriting 방식, Hidden Field 방식처럼 매 페이지마다 서비스에 필요한 데이터를 처리하지 X,

웹 클라이언트 측 자원만을 사용하여 웹 서비스 요청 시 데이터를 첨부하여 전송.

 

쿠키 = 카페 스탬프 쿠폰!!

클라이언트가 만들고 싶으면 만들고 싫으면 안만들어도 된다. (카페 스탬프 쿠폰과 동일)

추가적인 서비스의 질적 향상, 나에게 최적화된 서비스를 더 받고 싶다면 만들어두는 게 유리.

-웹 서버가 제시해서 웹 클라이언트에 저장

 

-웹 서버는 쿠키를 따로 관리하지 않는다.

(카페에서 쿠폰 관리 따로 X, 내 지갑에만 있음)

 

-웹 클라이언트는 해당 쿠키를 만들어줄 서버에 요청을 보낼 때 이 쿠키를 첨부하여 요청을 전송

(다시 카페에 방문할 때 쿠폰을 들고 올 것이다.)

 

쿠키 구성

name(이름) : 쿠키의 이름을 지정(★★★★)

value(값) : 쿠키 이름에 매칭되는 값 지정(★★★★)

expires(유효 시간) : 쿠키의 만료 기간 지정

domain(도메인) : 저장된 쿠키 요청 시 전송될 웹 서버의 도메인 지정

path : 쿠키가 전송될 웹 서버의 URL 지정(URL이 유효할 경우만 쿠키 전송)

secure : SSL과 같은 보안적 채널을 사용하는 경우에만 쿠키 전송

 

Cookie 클래스를 이용한 쿠키 생성, 사용
<%
Cookie cookie = new Cookie(name, value);
response.addCookie(cookie);
%>

-Cookie 클래스는 객체 생성과 동시에 쿠키의 이름과 값을 지정할 수 있다.

-생성한 Cookie 객체를 클라이언트로 전송하기 위해 response 내장객체의 addCookie() 메서드 사용

-만약 동일한 이름의 쿠키가 웹 클라이언트에 먼저 저장되어 있는 경우 현재 추가된 쿠키로 덮어쓰여진다.

-getName() : 쿠키 이름 반환
-getValue() : 쿠키 값 반환
-setValue() : 쿠키 값 지정
-setDomain() : 도메인 지정
-getDomain() : 도메인 반환
-setPath() : 경로 지정
-getPath() : 경로 반환
-setMaxAge() : 쿠키 유효 시간 초 단위로 지정
-getMaxAge() : 쿠키 유효 시간 초 단위로 반환

 

쿠키 로그인 예제 (아이디 저장 기능)

최초 실행될 로그인 기능을 갖춘 CookieSeesionLogin.jsp 페이지 제작

CookieSeesionSet.jsp 페이지 제작

->[로그인]버튼 누르면 POST 방식으로 아이디, 비밀번호, 아이디 저장 옵션 선택을 위한
rememberId 값이 CookieSessionSet.jsp 페이지로 전달된다.

CookieSessionChk.jsp 페이지 제작

-CookieSessionSet.jsp 페이지에서 생성된 쿠키를 토대로 사용자의 로그인 정보 출력

CookieSeesionLogout.jsp 페이지 제작

-[로그아웃] 버튼을 눌렀을 때 호출되는 페이지, 현재 접속된 세션을 종료시키는 역할 담당.
쿠키 삭제 메서드는 존재하지 않으므로
setMaxAge() 메서드를 사용하여 쿠키 유효시간을 0으로 설정.

 

1. CookieSessionLogin.jsp 페이지를 호출하고 아이디 기억 옵션을 체크하지 않았을 때

2. CookieSessionLogin.jsp 페이지를 호출하고 아이디 기억 옵션을 체크했을 때

이후 다시 CookieSessionLogin.jsp 페이지가 호출되면 아이디 입력란에 "TestID" 값이 채워져있고

아이디 기억 옵션도 먼저 체크되어 있다.

반응형
profile

my code archive

@얼레벌레 개발자👩‍💻

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

반응형