쿠키(Cookie)를 이용하여 특정 정보를 저장하고 그 저장한 정보를 쿠키 파일을 통해 유지시켜보자. 예제로는 한국어 페이지와 외국어 페이지를 선택하고 나중에 다시 접속했을 때 선택한 페이지가 유지되는 코드를 작성해볼 것이다. 예를 들어 영어 페이지를 선택하고 이것을 쿠키로 저장하게 되면 매번 설정하지 않고 처음 한 번만 설정하게 되면 쿠키 파일로 저장되어 다시 페이지를 설정하지 않아도 된다.
아래 링크 참고하면서 보면 이해하는데 도움됩니다.
https://yeo-computerclass.tistory.com/131?category=1269285
cookieExample1.jsp
5: 쿠키가 존재하는지 확인하기 위해 쿠키 헤더 값을 가져온다.
8: 존재하는 쿠키 값들을 배열로 가져온다.
10: 원하는 language 값을 찾기 위해 쿠키 값들을 모두 확인한다.
cookieExample2.jsp
4~7
쿠키는 객체 생성을 해준 후에 꼭 클라이언트로 전송하는 작업을 해주어야 합니다.
즉, 4번 줄에 있는 작업을 해주더라도 7번 줄에 있는 작업을 해주지 않으면 쿠키는 저장되지 않은 것과 마찬가지 입니다. 7번 줄에 있는 작업은 쿠키 객체를 추가해주는 작업이기 때문입니다.
결과
처음 페이지를 띄우면 기본으로 한글 페이질 설정되어있습니다.
여기서 [영어 페이지 보기]를 체크하여 설정하면 language란 쿠키 이름 값에 english가 저장되게 됩니다. 이렇게 저장되면 앞의 cookieExample1.jsp 페이지는 영어로 된 문구가 출력되게 됩니다. 쿠키 파일로 저장된 설정 값을 불러와서 페이지에 표시해주는 것이기 때문에 일시적으로 변하는 것이 아닙니다. 브라우저를 종료하고 다시 띄우더라도 영어 페이지로 출력됨을 확인할 수 있을 것입니다.
쿠키는 위 예제처럼 클라이언트에 저장되어 환경 설정을 유지할 수 있는 기능도 구현할 수 있습니다. 또한 이 기능은 보안이 필요하지 않는 기능이므로 이런 경우 세션보다 쿠키로 사용하는 것이 더 효율적입니다.
'JSP & Servlet > 개념' 카테고리의 다른 글
[JSP] 파일 업로드 (COS 라이브러리 사용) (0) | 2022.04.06 |
---|---|
[JSP & Servlet] JSP웹 오류페이지 예외처리 (0) | 2022.04.06 |
[JSP & Servlet] 세션(Session) - 로그인 정보 유지 (0) | 2022.04.05 |
[Servlet] 쿠키(Cookie) (0) | 2022.04.05 |
[Servlet] 세션(Session) (0) | 2022.04.05 |