JSP에서 기억하고 싶은 내용
쿠키란?
사용자 식별 정보
이름, 값을 갖는 작은 텍스트 데이터
클라이언트의 상태관리 기법중 하나
추가 정보도 포함할 수 있다
추가 정보: 유효시간, 도메인, 경로, 주석
추가 정보는 브라우저에 저장
쿠키 생성해보자
Cookie cookie = new Cookie("name", "value");
response.addCookie(cookie);
쿠키를 조작하는 메서드
getName(), getValue(), setValue(String value) 등 쿠키를 가져오고 설정한다
쿠키 값 읽는 방법
Cookie[] cookies = request.getCookies();
쿠키의 유효시간 정하기
setMaxAge
유효 시간을 0으로 하면 쿠키를 삭제한다
시간 설정 안하면 웹 브라우저가 종료될 때 삭제된다
기본 값: -1
쿠키 값을 변경하자
같은 이름의 cookie에 값을 바꿔서 추가하면 된다
Cookie cookie = new Cookie("name", "jimmy");
response.addCookie(cookie);
Cookie cookie = new Cookie("name", "james");
response.addCookie(cookie);
쿠키 삭제
유효 시간을 0으로 해주면 삭제한다는 의미!
cookie.setMaxAge(0);
response.addCookie(cookie);
쿠키의 도메인이란?
기본적으로 쿠키는 쿠키를 보낸 서버에게만 전송될 수 있다
하지만 도메인 설정을 해주면 같은 도메인 상에 있는 다른 호스트와 쿠키 공유 가능!
쿠키를 생성한 서버의 주소와 관련 없는 도메인은 안된다
cookie.setDomain(.oracle.com)
이렇게 하면 java.oracle.com, www.oracle.com 등 가능
쿠키의 경로를 변경할 수 있다
경로 지정안하면 쿠키 만든 페이지의 경로로 설정된다
setPath(String uri) 사용
HTTP 프로토콜의 stateless 특성
a.jsp요청과 연속된 b.jsp 요청은 서로 무관하다
상태 관리를 위해 쿠키나 세션 이용한다
쿠키를 이용해서 로그인/아웃을 해보자
- 로그인 시도
- 가입된 유저인지 판단
- 가입된 유저면 로그인 상태에서 사용할 쿠키 생성
- 이후 방문하면 서버에서는 클라이언트에서 보낸 쿠키를 가지고 로그인 여부 판단
- 로그아웃하면 사용했던 쿠키를 삭제
'Web Dev > JSP' 카테고리의 다른 글
JSP 10강 :: 자바빈, 클래스, 액션태그 (0) | 2022.10.31 |
---|---|
JSP 9강 :: 세션, 세션 내장 객체 (0) | 2022.10.24 |
JSP 7강 :: include, forward, 모듈화, 파라미터 보내기 (0) | 2022.10.17 |
JSP 6강 :: 주요 내장객체, 페이지간 데이터 공유 방법 (0) | 2022.10.10 |
JSP 5강 :: JSP 요청과 응답, 내장객체 (0) | 2022.10.10 |