1 / 22

임지희 ambomis@kunsan.ac.kr 군산대학교 통계컴퓨터과학과 정보과학기술 연구실 2012.07.26

J S P CH4 . 쿠키와 세션. 임지희 ambomis@kunsan.ac.kr 군산대학교 통계컴퓨터과학과 정보과학기술 연구실 2012.07.26. 목차. 쿠키와 세션에 대하여 쿠키와 기술의 사용 방법 세션 기술의 사용 방법. IST (Information Sciences & Technology) Laboratory. 쿠키와 세션에 대하여. 두 개의 웹 컴포넌트가 데이터를 주고 받도록 만들기 위해서는 ? 쿠키 기술이나 세션 기술을 사용 쿠키 기술

hubert
Télécharger la présentation

임지희 ambomis@kunsan.ac.kr 군산대학교 통계컴퓨터과학과 정보과학기술 연구실 2012.07.26

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. J S P CH4 . 쿠키와 세션 임지희 ambomis@kunsan.ac.kr 군산대학교 통계컴퓨터과학과 정보과학기술 연구실 2012.07.26

  2. 목차 • 쿠키와 세션에 대하여 • 쿠키와 기술의 사용 방법 • 세션 기술의 사용 방법 IST (Information Sciences & Technology) Laboratory

  3. 쿠키와 세션에 대하여 • 두 개의 웹 컴포넌트가 데이터를 주고 받도록 만들기 위해서는? 쿠키 기술이나 세션 기술을 사용 • 쿠키 기술 • 전달할 데이터를 웹 브라우저로 보냈다가 웹 서버 쪽으로 되돌려 받는 방법 사용 • 세션 기술 • 웹 브라우저를 거치지 않고 웹 서버에 있는 데이터 영역을 통해 데이터를 전달하는 방법 사용 데이터 첫 번째 웹 컴포넌트 쿠키 데이터 저장소 첫 번째 웹 컴포넌트 두 번째 웹 컴포넌트 첫 번째 웹 컴포넌트 데이터 세션아이디 첫 번째 웹 컴포넌트 첫 번째 웹 컴포넌트 세션 데이터 저장소 두 번째 웹 컴포넌트 첫 번째 웹 컴포넌트 세션아이디 IST (Information Sciences & Technology) Laboratory

  4. 쿠키 기술의 사용 방법 (1/10) • 새로운 쿠키 데이터를 저장하는 방법 – 입력 기능 • 쿠키 데이터를 웹 브라우저 쪽에 저장 하기 위해서는? • Cookie 클래스의 객체를 만들어야 함 -- ① • addCookie메서드를 호출 해야 함 -- ② Cookie cookie = new Cookie (“AGE”, “22”) ; response . addCookie (cookie) ; Cookie 객체 쿠키이름 쿠키값 웹 브라우저가 쿠키를 저장할 때 웹 서버의 주소도 함께 저장 IST (Information Sciences & Technology) Laboratory

  5. 쿠키 기술의 사용 방법 (2/10) • 새로운 쿠키 데이터를 저장하는 방법 – 입력 기능 • 예제 addCookie메서드 호출 객체 생성 StoreCookies.jsp IST (Information Sciences & Technology) Laboratory

  6. 쿠키 기술의 사용 방법 (3/10) • 쿠키 데이터를 읽는 방법 – 조회 기능 • 쿠키 받기 : getCookies • 특정쿠키 찾기 : getName • 쿠키 값 가져오기 : getValue Cookie cookies[ ] = request getCookies ( ) ; String name = cookie getName ( ) ; String value = cookie getValue ( ) ; 웹브라우저가 보낸 모든 쿠키를 Cookie 배열로 만들어서 리턴하는메서드 쿠키이름을 가져오는 메서드 쿠키값을 가져오는 메서드 IST (Information Sciences & Technology) Laboratory

  7. 쿠키 기술의 사용 방법 (4/10) • 쿠키 데이터를 읽는 방법 – 조회 기능 • 예제 웹브라우저가 보낸 쿠키를 배열로 리턴 받기 배열에서 특정 쿠키 찾기 ReadCookies.jsp IST (Information Sciences & Technology) Laboratory

  8. 쿠키 기술의 사용 방법 (5/10) • 쿠키 데이터를 수정하는 방법 – 수정 기능 • 쿠키를 저장 할 때와 같이 Cookie 객체를 만들어 addCookie메서드에 넘겨줌 • 예제 ModifyCookie.jsp IST (Information Sciences & Technology) Laboratory

  9. 쿠키 기술의 사용 방법 (6/10) • 쿠키 데이터를 삭제하는 방법 – 삭제 기능 • 쿠키에 수명을 지정해 놓으면 일정 기간 동안 보존됨 • 수명지정방법 • add Cookie 메서드 호출 전에 setMaxAge메서드를호출 • setMaxAge메서드: 쿠키의 남은 수명을 초단위로 넘겨줘야 함 • 예제 1시간 후에 쿠키를 삭제하려면? 쿠키를 바로 삭제 하려면? 웹 브라우저가 끝날 때 쿠키를 삭제하려면? Cookie.setMaxAge(3600) ; Cookie.setMaxAge(0) ; Cookie.setMaxAge(-1) ; IST (Information Sciences & Technology) Laboratory

  10. 쿠키 기술의 사용 방법 (7/10) • 쿠키 데이터를 삭제하는 방법 – 삭제 기능 • 예제 DeleteCookie.jsp IST (Information Sciences & Technology) Laboratory

  11. 쿠키 기술의 사용 방법 (8/10) • 쿠키가 특정 경로명을 갖는 URL로만 전송되도록 만드는 방법 • 특정 경로명을 갖는 URL로만 쿠키가 전송되도록 만드는 방법 • addCookie메서드 호출 전에 satPath메서드 호출 • 웹 애플리케이션 디렉터리를 기준으로 한 URL 경로명을 파라미터로 넘겨줘야 함 • 예제 http://localhost:8080/brain/sub1/으로 시작하는 URL로만 쿠키가 전송되도록 하려면? Cookie.setPath(“/brain/sub1/”) ; IST (Information Sciences & Technology) Laboratory

  12. 쿠키 기술의 사용 방법 (9/10) • 쿠키가 특정 경로명을 갖는 URL로만 전송되도록 만드는 방법 • 예제 ReadJobCookie.jsp StoreJobCookie.jsp IST (Information Sciences & Technology) Laboratory

  13. 쿠키 기술의 사용 방법 (10/10) • 쿠키가 여러 웹 서버로 전송되도록 만드는 방법 • addCookie메서드 호출 전에 setDomain메서드를 호출 • 도메인 설정 : setDomain • 예제 • www1.hanb.co.kr • www2.hanb.co.kr • www3.hanb.co.kr setDomain(“.hanb.co.kr”) ; IST (Information Sciences & Technology) Laboratory

  14. 세션 기술의 사용 방법 (1/8) • 서블릿 클래스에서 세션 기술을 사용하는 방법 • 세션 시작 ,정보 가져오기 : getSession • 데이터 저장, 수정 : setAttribute • 데이터 가져오기 : getAttribute • 데이터 삭제 : removeAttribute • 세션끝내기 : invalidate HttpSession session = request.getSession ( ) ; session.setAttribute(“ID”, “주댕이”) ; Stringstr = (String) session.getAttribute(“ID”) ; session.removeAttribute(“ID”) ; session.invalidate() ; IST (Information Sciences & Technology) Laboratory

  15. 세션 기술의 사용 방법 (2/8) Animalservlet 서블릿 클래스 등록하는 코드 Resultservlet 서블릿 클래스 등록하는 코드 web.xml Food.html Animalservlet.java Resultservlet.java IST (Information Sciences & Technology) Laboratory

  16. 세션 기술의 사용 방법 (3/8) • JSP 페이지에서 세션 기술을 사용하는 방법 서블릿 클래스에서는 새로운 세션을 시작하거나 진행중인 세션을 계속하기 위해 getSession메서드 사용. 하지만 서블릿 클래스에서는 이 코드가 자동으로 추가 되기 때문에 session 내장변수를 사용하면 됨. • 데이터 저장, 수정 : setAttribute • 데이터 가져오기 : getAttribute • 데이터 삭제 : removeAttribute • 세션끝내기 : invalidate session.setAttribute(“ID”, “주댕이”) ; Stringstr = (String) session.getAttribute(“ID”) ; session.removeAttribute(“ID”) ; session.invalidate() ; IST (Information Sciences & Technology) Laboratory

  17. 세션데이터 읽어옴 PersonalInfo.html 세션데이터 저장 세션종료 Subscript.jsp Agreement.jsp Result.jsp

  18. 세션 기술의 사용 방법 (5/8) • 세션 기술에서도 웹브라우저로 세션 아이디를 보낼 때, 쿠키 형태로 만들어서 전송함. • 그 쿠키의 이름은 JSESSIONID • 하지만 어떤 경우에는 쿠키 기술을 사용할 수 없음 . • 그런 환경에서는 URL 재작성 메커니즘을 사용해 세션 아이디를 전송함 세션아이디 첫 번째 웹 컴포넌트 첫 번째 웹 컴포넌트 세션 데이터 저장소 세션아이디 저장 JSESSINID=B69997AA065 두 번째 웹 컴포넌트 첫 번째 웹 컴포넌트 세션아이디 JSESSINID=B69997AA065 IST (Information Sciences & Technology) Laboratory

  19. 세션 기술의 사용 방법 (6/8) • URL 재작성 메커니즘의 사용 방법 • A는 어떻게 URL을 보낼 수 있을 까? 대부분의 웹 애플리케이션에서 먼저 나오는 화면에 다음 화면에 대한 링크가 있음 • 본래의 URL을 가지고 새로은 URL을 만드는 방법이기 때문에 URL 재작성이라고 부름 URL + 세션아이디 첫 번째 웹 컴포넌트 첫 번째 웹 컴포넌트 세션 데이터 저장소 두 번째 웹 컴포넌트 첫 번째 웹 컴포넌트 URL + 세션아이디 IST (Information Sciences & Technology) Laboratory

  20. 세션 기술의 사용 방법 (7/8) • URL 재작성 메커니즘의 사용 방법 • 호출 하기 : encodeURL 재작성된URL : http://localhost:8080/~.jsp ; jsessionid=8080A1AAA619AG5R48 String url = response.encodeURL(http://localhost:8080/~.jsp) IST (Information Sciences & Technology) Laboratory

  21. 세션 기술의 사용 방법 (8/8) • URL 재작성 메커니즘의 사용 방법 • 쿠키 차단하기 도구 > 인터넷 옵션 > 개인정보 > 모든쿠키 차단 • 예제 WriteSessionData.jsp ReadSessionData.jsp IST (Information Sciences & Technology) Laboratory 차단 하지 않았을 때

  22. END 감사합니다 임지희 ambomis@kunsan.ac.kr

More Related