- 쿠키(Cookie)란 웹 페이지들 사이의 공유 정보를 클라이언트 PC에 저장 해놓고 필요할 때 여러 웹 페이지들이 공유해서 사용할 수 있도록 매개 역할을 하는 방법
- 쿠키 특징
- 정보가 클라이언트 PC에 저장된다.
- 저장정보 용량에 제한이 있다(파일 용량4KB)
- 보안이 취약하다
- 클라이언트 브라우저에서 사용 유무를 설정 할 수 있다.
- 도메인당 쿠키가 생성된다.(웹사이트 한개당 쿠키 생성)
- 쿠키의 종류
- Presistence 쿠키
- 생성위치 -> 파일로 생성
- 종료 시기 -> 쿠키를 삭제 하거나 쿠키 설정 값이 종료 된 경우
- 최초 접속시 전송 여부 -> 최초 접속 시 서버로 전송
- 용도 -> 로그인 유무 또는 팝업창을 제한할 때
- Session 쿠키
- 생성위치 -> 브라우저 메모리에 생성
- 종료시기 -> 브라우저를 종료한 경우
- 최초 접속시 전송 여부 -> 최초 접속 시 서버로 전송되지 않음
- 용도 -> 사이트 접속 시 Session 인증 정보를 유지 할 때
- Presistence 쿠키는 클라이언트에 파일로 정보를 저장하는 기능을 한다.
- Session 쿠키는 브라우저가 사용하는 메모리에 생성되는 쿠키다.
- Presistence 쿠키
- 쿠키 API
- 쿠키는 Cookie 클래스 객체를 생성하여 정보를 저장한 후 서버에서 클라이언트로 전송해 파일로 저장된다.
- Cookie 관련 API 특징
- javax.servlet.http.Cooke 사용
- HttpServletResponse의 addCookie() 메서드를 이용해 클라이언트 브라우저에 쿠키를 전송 한 후 저장한다.
- HttpServletRequest의 getCookie() 메서드를 이용해 쿠키를 서버로 가져온다.
- 쿠키 클래스의 메서드
- getComment() -> 쿠키에 대한 설명을 가져온다
- getDomain() -> 쿠키의 유효한 도메인 정보를 가져온다
- getMaxAge() -> 쿠키 유효 기간을 가져온다
- getName() -> 쿠키 이름을 가져온다
- getPath() -> 쿠키의 디렉터리 정보를 가져온다
- getValue() -> 쿠키의 설정 값을 가져온다.
- setComment(String) -> 쿠키에 대한 설명을 설정한다.
- setDomain(String) -> 쿠키의 유효한 도메인을 설정한다.
- setMaxAge(int) -> 쿠키 유효 기간을 설정한다.
- setValue(String) -> 쿠키의 값을 설정한다.
- setPath(String) -> 쿠키의 디렉토리 정보를 설정한다.
- setMaxAge() 메서드를 이용한 쿠키 저장방식 차이
- 인자값으로 setMaxAge() 메서드를 사용하지 않고 쿠키 생성시 Session 쿠키로 저장된다.
- 인자 값으로 양수를 지정하면 Persistence 쿠키로 저장된다.
- 쿠키 생성 실습
SetCookiValue.java
GetCookieValue.java
'JAVA' 카테고리의 다른 글
서블릿에서 세션 API 사용 (0) | 2021.08.21 |
---|---|
세션을 이용한 웹 페이지 연동 기능 (0) | 2021.08.21 |
웹 페이지 연결 기능 (0) | 2021.08.15 |
load-on-startup (0) | 2021.08.11 |
ServletConfig (0) | 2021.08.11 |