JAVA야

[펌]JSP-쿠키와 세션- 쿠키처리를 위한 유틸리티 클래스

administrators 2010. 2. 18. 20:57

JSP-쿠키와 세션- 쿠키처리를 위한 유틸리티 클래스


[참고1]http://www.roseindia.net/jsp/jspcookies.shtml

[참고2]주소표시줄 javascript:document.cookie

 

CookieBox.java

 

 

package jsp.util;

 

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.Cookie;
import java.util.Map;
import java.net.URLEncoder;
import java.net.URLDecoder;
import java.io.IOException;

public class CookieBox {
 
 private Map cookieMap= new java.util.HashMap();
 // 쿠키를 <쿠키이름, cookie 객체> 쌍으로 저장하는 맵
 
 public CookieBox(HttpServletRequest request){
 // 생성자, cookie배열을 cookieMap에 저장한다.
  Cookie[] cookies= request.getCookies();
  if(cookies !=null){
   for(int i=0; i<cookies.length; i++){
    cookieMap.put(cookies[i].getName(), cookies[i]);
   }
  }
 }
 
 public static Cookie createCookie(String name, String value)
     throws IOException {
 // 이름이 name,값이 value인 쿠키객체를 생성해서 리턴
        return new Cookie(name, URLEncoder.encode(value, "euc-kr"));
    }

 public static Cookie createCookie(String name, String value, String domain,
  String path, int maxAge)throws IOException {
 // 이름이 name,값이 value,도메인이 domain, 경로가 path, 유효시간이 maxAge인 쿠키객체를 생성해서 리턴   
  Cookie cookie = new Cookie(name, URLEncoder.encode(value, "euc-kr"));
        cookie.setDomain(domain);
        cookie.setPath(path);
        cookie.setMaxAge(maxAge);
        return cookie;
 }
 
 public static Cookie createCookie(String name, String value, String path, int maxAge)
  throws IOException{
 // 이름이 name,값이 value, 경로가 path, 유효시간이 maxAge인 쿠키객체를 생성해서 리턴
   Cookie cookie= new Cookie(name,URLEncoder.encode(value,"euc-kr"));
   cookie.setPath(path);
   cookie.setMaxAge(maxAge);
   return cookie;
 }
 
 public Cookie getCookie(String name){
 // 쿠키 맵에 저장된 쿠키에서 지정한 이름의 쿠키객체를 구한다.
  return (Cookie)cookieMap.get(name);
 }
 
 public String getValue(String name)throws IOException{
 // 쿠키 맵에 저장된 쿠키에서 지정한 이름의 쿠키객체 값을 구한다.
  Cookie cookie=(Cookie)cookieMap.get(name);
  if(cookie==null) return null;
  return URLDecoder.decode(cookie.getValue(),"euc-kr");
 }
 
 public boolean exists(String name){
 // 지정한 이름의 쿠키가 존재할 경우 true, 아니면 false리턴
  return cookieMap.get(name) != null;
 }

}

 

 

 

[출처] http://blog.naver.com/dlaeoals85/140100927507

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

..

 

'JAVA야' 카테고리의 다른 글

JDK 7.0 API DOC  (0) 2012.10.04
[펌] iText - java를 PDF로 변환  (0) 2010.06.16
[복사되는블로그 꼬마갱이] java에서 procedure호출  (0) 2010.01.13
p6spy - 쿼리 로그 보기  (0) 2009.12.24
[펌]replaceAll  (0) 2009.12.23