자바 에 대한 쿠키 작업

1.쿠키 설정

 Cookie cookie = new Cookie("key", "value");
 cookie.setMaxAge(60); //  60    ,         ,         Cookie(     ),        。
 cookie.setPath("/test/test2"); //  Cookie  ,          (  Servlet   request.getContextPath() + web.xml     Servlet url-pattern    )
 response.addCookie(cookie);

2.쿠키 읽 기

//             “     ”   Cookie  ,      Cookie  ,   null
 Cookie[] cookies = request.getCookies();

3.쿠키 삭제

Cookie cookie = new Cookie("key", null);
cookie.setMaxAge(0); //   0      Cookie
cookie.setPath("/test/test2"); //        Cookie,      ,         Cookie
response.addCookie(cookie);

4.주의:경로 구 조 를 다음 과 같이 가정 합 니 다.
                         /
                         /test
                         /test/test2
                         /test345
                         /test555/test666
    a.같은 키 의 Cookie(값 이 같 거나 다 를 수 있 음)는 다른 경로 에 존재 할 수 있 습 니 다.
     
    b.삭제 할 때 현재 경로 에"key"키 가 있 는 쿠키 가 없 으 면 모든 부모 경 로 를 조회 하고 검색 하면 삭제 작업 을 수행 합 니 다(매번 자신의 가장 가 까 운 부모 경로 쿠키 만 삭제 할 수 있 습 니 다)
        FF.쿠키 를 설정 할 때 사용 하 는 것 과 같은 경 로 를 지정 하여 쿠키 를 삭제 해 야 합 니 다.또한 쿠키 의 키 이름 은 대문자,소문 자,크기 를 막론하고 경 로 를 지정 해 야 합 니 다.
        IE.소문 자 키 를 눌 렀 을 때 현재 경로 가/test/test 2 이면 위로/test,/test 555,/test 345 를 찾 을 수 없 으 면/를 조회 합 니 다.(/test 555/test 666 조회 하지 않 음)
             키 이름 의 대소 문자 가 혼합 되 거나 대문자 일 때 경 로 를 지정 하지 않 으 면 현재 경 로 를 기본적으로 삭제 하고 위로 조회 하지 않 습 니 다.
    c.쿠키 를 읽 을 때 부모 경로 의 쿠키 만 읽 을 수 있 습 니 다.
        현재 경로 가/test/test 2 라면 읽 을 키 는"key"입 니 다.현재 경 로 를 읽 은 후/test,/test 를 읽 은 후 읽 어야 합 니 다/
    d.자바 의 웹 프로젝트 를 할 때 일반적인 웹 서버(예 를 들 어 Tomcat 또는 Jetty)는 Context 로 서로 다른 웹 애플 리 케 이 션 을 관리 하기 때문에 모든 Context 에 서로 다른 Path 가 있 습 니 다.
       한 서버 에 여러 개의 웹 애플 리 케 이 션 이 있 을 때 는 Path 를/로 설정 하지 않도록 각별히 조심해 야 합 니 다.도 메 인 이름
    e.서로 다른 경로 에서 같은 키 의 쿠키 를 사용 하지 않 는 것 이 좋 습 니 다.이렇게 하면 잘못된 의 미 를 일 으 키 기 쉽 습 니 다.
    f.FF 와 IE 또는 다른 브 라 우 저 에 대한 구분 작업 을 피하 기 위해 쿠키 를 설정 할 때 경 로 를 지정 하 는 것 이 좋 습 니 다.쿠키 를 삭제 할 때 도 경 로 를 지정 해 야 합 니 다.

좋은 웹페이지 즐겨찾기