본문 바로가기

JAVA

쿠키를 이용한 웹 페이지 연동 기능

  • 쿠키(Cookie)란 웹 페이지들 사이의 공유 정보를 클라이언트 PC에 저장 해놓고 필요할 때 여러 웹 페이지들이 공유해서 사용할 수 있도록 매개 역할을 하는 방법
  • 쿠키 특징
    • 정보가 클라이언트 PC에 저장된다.
    • 저장정보 용량에 제한이 있다(파일 용량4KB)
    • 보안이 취약하다
    • 클라이언트 브라우저에서 사용 유무를 설정 할 수 있다.
    • 도메인당 쿠키가 생성된다.(웹사이트 한개당 쿠키 생성)
  • 쿠키의 종류
    • Presistence 쿠키
      • 생성위치 -> 파일로 생성
      • 종료 시기 -> 쿠키를 삭제 하거나 쿠키 설정 값이 종료 된 경우
      • 최초 접속시 전송 여부 -> 최초 접속 시 서버로 전송
      • 용도 -> 로그인 유무 또는 팝업창을 제한할 때
    • Session 쿠키
      • 생성위치 -> 브라우저 메모리에 생성
      • 종료시기 -> 브라우저를 종료한 경우
      • 최초 접속시 전송 여부 -> 최초 접속 시 서버로 전송되지 않음
      • 용도 -> 사이트 접속 시 Session 인증 정보를 유지 할 때
    • Presistence 쿠키는 클라이언트에 파일로 정보를 저장하는 기능을 한다.
    • Session 쿠키는 브라우저가 사용하는 메모리에 생성되는 쿠키다.
  • 쿠키 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