출처: http://november11tech.tistory.com/88 [Mr.november11] 쿠키 :: 사월은 봄이다.

쿠키기술은 전달할 데이터를 웹 브라우저로 보냈다가 웹 서버 쪽으로 되돌려 받는 방법을 사용한다. 


즉, 첫 번째 웹 컴포넌트가 웹 브라우저로 html 문서를 보낼 때 전달할 데이터를 함께 보낸다. 그러면 웹 브라우저는 그 데이터를 저장해 두었다가 두 번째 웹 컴포넌트를 호출할 때 url과 함께 웹 서버로 보낸다.


 


[쿠키 기술을 이용한 웹 컴포넌트간 데이터 전달] 





 새로운 쿠키를 저장하는 방법 - 입력기능


1. 쿠키 클래스의 객체를 만든다.


2. addCookie() 호출


 


쿠키 클래스의 객체를 만들 때는 쿠키의 이름과 파라미터 를 넘겨줘야 한다.(String)


 


Cookie ck = new Cookie( "name", "26" );


 


그다음 addCookie를 호출해 웹 브라우저로 쿠키를 보내야 한다.


jsp 페이지에서는 response 객체, 서블릿 클래스에서는 doGet, doPost 메서드의 두번재 파라미터에 대해 호출해야 한다.


 


response.addCookie( ck ) ;


 


이 메서드를 통해 웹 브라우저로 전송된 쿠키를 실제로 저장하는 일은 웹 브라우저가 한다.


웹 브라우저가 쿠키를 저장할 때 웹 서버의 주소도 함께 저장해 놓는다.


 


 


 


저장된 쿠키 확인하는 방법


 


쿠키 데이터를 읽는 방법 - 조회


 


웹 브라우저는 웹 서버가 아무런 요청을 하지 않아도 웹 서버로 url을 보낼때 마다 그 url에 포함된 웹 서버의 주소에 해당하는 모든 쿠키를 찾아서 웹 서버로 보낸다. 쿠키를 받는 일은 getCookies() 를 사용하면 된다.


 


 


Cookie coo[] = request.getCookies() ;


-> 웹 브라우저가 보낸 모든 쿠키를 쿠키 배열로 만들어서 리턴하는 메서드


 


 


getCookies()는 웹 브라우저로부터 온 쿠키 데이터가 하나도 없으면 null을 리턴한다.


메서드가 리턴한 배열에서 특정 쿠키를 찾기 위해선 이름을 하나하나 비교해 가며 찾을 수 밖에 없다고 한다.


그래서 getName()으로 이름을 구할 수 있다.


getValue() 는 쿠키의 값을 가지고 올 수 있다.


 


 


 


쿠키 데이터를 수정하는 방법 - 수정


 


쿠키를 수정하려면 저장할 때 처럼 쿠키 객체를 만들어 addCookie 를 넘겨주면 된다. 그러면 이 메서드는 파라미터로 받은 쿠키를 웹 브라우저로 보낼 테고 웹 브라우저는 자신이 가지고 잇는 쿠키 중 같은 이름이 있으면 그걸 지우고 새로운 쿠키를 저장 할 것이다.


 


 


 


쿠키  데이터를 삭제하는 방법 - 삭제


 


쿠키는 삭제하는 것이 아니고 쿠키의 수명을 조절해서 쿠키를 삭제한다.


쿠키의 수명을 0으로 설정하면 쿠키가 삭제된다.


 


 


 

'개발 > JSP_WEB' 카테고리의 다른 글

request.getParameter()과 request.getAttribute()  (0) 2018.02.12
str.getBytes  (0) 2018.02.12
익스프레션 언어  (0) 2018.02.12
서블릿 (Servlet)  (0) 2018.02.12
EL(Expression Language)  (0) 2018.02.12

+ Recent posts