본문 바로가기

JSP

cookie

jsp는 쿠키 기능을 사용할 수 있도록 Cookie 클래스와 관련 메소드를 제공하며 쿠키를 사용하려면 Cookie() 생성자 함수에 매개변수로 속성명과 속성값을 넣어 쿠키 객체를 생성할 수 있으며 response.addCookie()는 웹 브라우저에 생성된 쿠키 객체를 쿠키로 저장한다.
쿠키는 클라이언트의 일정 폴더에 정보를 저장하기 때문에 웹 서버의 부하를 줄일 수 있다는것이 장점이지만 웹 브라우저가 접속했던 웹 사이트에 관한 정보와 개인 정보가 기록되기 때문에 보안에 문제가 있다.


Cookie 클래스의 메소드 종류



Cookie()메소드를 사용해 쿠키를 생성해야한다.
쿠키를 생성한 후 반드시 response 내장 객체의 addCookie() 메소드로 쿠키를 설정해야 한다.
Cookie cookie = new Cookie( "memberId", "admin");
response.addCookie(cookie);
첫번째 매개변수는 쿠키를 식별하기 위한 이름, 두번째 매개변수는 쿠키 값을 설정한다.

생성된 쿠키의 정보를 얻어오려면 request 내장객체의 getCookies()를 이용하여 쿠키 객체를 배열로 얻어온 후 getName(), getValue()를 이용해서 쿠키 이름과 값을 확인할 수 있다.

클라이언트에 저장된 모든 쿠키 객체를 가져오려면 request 내장 객체의 getCookies() 메소드를 사용해야한다. 쿠키 객체는 모두 배열 형태로 가져온다.

쿠키 클래스는 쿠키를 삭제하는 기능을 별도로 제공하지 않으며 브라우저가 종료되어도 쿠키의 만료기간이 남아있다면 클라이언트는 쿠키를 계속 보관한다. 쿠키를 더 유지할 필요가 없으면 쿠키의 유효기간을 만료하면 된다. setMaxAge()에 유효기간을 초단위로 0으로 설정하여 쿠키 삭제가 가능하다. JsessionId는 서버에서 사용자를 식별하기 위한 식별자로 자동으로 쿠키에 생성해주는 값으로 세션이 끊기지 않는이상 유지되는 값이며 브라우저에서 강제삭제는 가능하지만 refresh를 하면 다시 자동생성된다.

'JSP' 카테고리의 다른 글

session.jsp  (0) 2023.07.10
filter jsp  (0) 2023.07.07
프로그래밍적 시큐리티&예외처리 jsp  (0) 2023.07.06
다국어 처리, 시큐리티 jsp  (0) 2023.07.05
정규표현식 유효성 검사  (0) 2023.07.04