쿠키란 커피숍의 쿠폰과 같다. 처음 커피숍을 방문 시 클라이언트에게 쿠폰은 존재하지않는다. 방문 시 쿠폰을 만들어 손님에게 건내주게된다.


클라이언트   WAS
  ———->  
  getcookies  
  <———-  
  addcookie  

(1) 처음 홈페이지에 접속시 클라이언트는 쿠키가 없다. 서버 접속 시에 WAS에서 쿠키가 생겨 클라이언트에게 준다. *cookie[] request.get cookies() 배열을 줌 쿠키를 몇개 저장가능한가? 브라우저마다 다르지만 도메인당 50개,최대 3000개
저장값은 4kb이다.

(2) 재접속 시 브라우저의 디스크에 저장한 쿠키를 가지고 접속한다. 쿠키는 백엔드 기술이 아니라 프론트(자바스크립트)에서도 설정가능한다. 쿠키는 헤드에 가져가기때문에 큰 값을 전달할 수 없으며 쿠키는 보안성이 낮아서 위변조가 가능하다.

Session


session은 헬스장 손님만의 캐비넷을 만들어 손님에게 캐비넷을 사용할 수 있는 유일한 id를 준다.


클라이언트   WAS
  ———->  
  요청 httpSession생성
  <———-  
  세션id  

(1) Session id > 요청정보를 통해 생성, 접근할 수 있는 httpSession을 만든다.

(2) cookie에 담아서 세션id를 전달해 준다. request.getSession http세션에 잠아서 유지하는것 - sessionscope

세션에 값을 담을때 -> session.setAttribute 세션에서 값을 꺼낼때 -> session.getAttribute (꺼낼땐 원래형태로 형변환이 필요하다.)