▶ 쿠키(Cookie)
쿠키란 웹 페이지들 사이의 공유 정보를 클라이언트 PC에 저장해 놓고 필요할 때 여러 웹 페이지들이 공유해서 사용할 수 있도록 매개 역할을 하는 방법
· 쿠키의 특징
① 정보가 클라이언트 PC에 저장
② 저장 정보 용량에 제한 존재
③ 보안이 취약
④ 클라이언트 브라우저에서 사용 유무를 설정 가능
⑤ 도메인 당 쿠키 생성
˙쿠키의 종류
속성 | Persistence 쿠키 | Session 쿠키 |
생성 위치 | 파일로 생성 | 브라우저 메모리에 생성 |
종료 시기 | 쿠키 삭제 / 쿠키 설정 값이 종료된 경우 | 브라우저를 종료한 경우 |
최초 접속 시 전송 여부 | 최초 접속 시 서버로 전송 | 최초 접속 시 서버로 전송되지 않음 |
용도 | 로그인 유무 또는 팝업창을 제한할 때 | 사이트 접속 시 세션 인증 정보를 유지할 때 |
▶ 쿠키 기능 실행 과정
① 브라우저로 사이트에 접속
② 서버는 정보를 저장한 쿠키를 생성
③ 생성된 쿠키를 브라우저로 전송
④ 브라우저는 서버로부터 받은 쿠키 정보를 쿠키 파일에 저장
⑤ 브라우저가 다시 접속해 서버가 브라우저에게 쿠키 전송을 요청하면 브라우저는 쿠키 정보를 서버에 넘겨줌
⑥ 서버는 쿠키 정보를 이용해 작업
▶ 쿠키 API
- java.servlet.http.Cookie 를 이용
- HttpServletResponse의 addCookie( ) 메서드를 이용해 클라리언트 브라우저에 쿠키를 전송한 후 저장
- HttpServletRequest의 getCookie( ) 메서드를 이용해 쿠키를 서버로 가져옴
˙ 쿠키 클래스의 여러가지 메서드
getComment( ) : 쿠키에 대한 설명을 가져옴
getDomain( ) : 쿠키의 유효한 도메인 정보를 가져옴
getMaxAge( ) 쿠키 유효 기간을 가져옴
getName( ) : 쿠키 이름을 가져옴
getPath( ) : 쿠키의 디렉터리 정보를 가져옴
get Value( ) : 쿠키의 설정 값을 가져옴
setComment(String) : 쿠키에 대한 설명을 설정
setDomain(String) : 쿠키의 유효한 도메인을 설정
setMaxAge(int) : 쿠키 유효 기간을 설정함
setValue(String) : 쿠키 값을 설정함
setPath(String) : 쿠키의 디렉터리 정보를 설정함
쿠키 생성 시 setMaxAge( ) 메서드 인자 값의 종류를 지정해서 파일에 저장하는 Persistence 쿠키를 만들거나
메모리에만 저장하는 Session 쿠리를 만들 수 있습니다.
즉, setMaxAge( ) 메서드를 이용한 퀴 저장 방식은 다음 두가지로 나눌 수 있습니다.
인자 값으로 음수나 setMaxAge( ) 메서드를 사용하지 않고 쿠키를 만들면 Session 쿠키로 저장됩니다.
인자 값으로 양수를 지정하면 Persistence 쿠키로 저장됩니다.
'코딩 기록 > JSP' 카테고리의 다른 글
[JSP] 세션 로그인 예제 (DB 연동) (0) | 2021.05.11 |
---|---|
[JSP] 서블릿에서 쿠키 사용하기 (0) | 2021.05.10 |
[JSP] ServletConfig - 애너테이션을 이용한 서블릿 초기화 기능 (0) | 2021.05.07 |
[JSP] ServletContext(매개변수 설정, 파일 입출력) (0) | 2021.05.07 |
[JSP] 서블릿 바인딩 방법 (0) | 2021.05.07 |