クッキーの使い方


新規クッキー

Cookie cookie = new Cookie("isAutoLogin", "0");//       isAutoLogin,  0 cookie
cookie.setMaxAge(365*24*60*60);//   cookie    ,             ,       ,     。
cookie.setSecure(false);//                 ,  https ssl,           ,     false
cookie.setPath("/");//                   cookie,            。           ,   "/"
cookie.setDomain(".bb.com");//      。       www.aa.com,     www.bb.com       cookie ,           ,  www.bb.com       cookie 。
response.addCookie(cookie);// HttpServletResponse   cookie     。

一般的な方法でクッキーを取得

Cookie[] cookies = request.getCookies();
for (Cookie cookie : cookies) {
 if ("username".equals(cookie.getName())) {
    usernameCookie = cookie.getValue(); //   cookie      
 }else if ("password".equals(cookie.getName())) {  
    passwordCookie = cookie.getValue(); //   cookie     
 }else if ("isAutoLogin".equals(cookie.getName())) {  
    isAutoLogin = cookie.getValue(); //   cookie       
 }  
}

SpringMVCクッキー取得

@RequestMapping(value="/index")
public String index(HttpServletRequest request,HttpServletResponse response, @CookieValue(value="username", required=false) String username) throws Exception{
   //TODO String aa = username;
}

ここでrequired=falseは、クッキーからusernameの値を強制的に取得しないことを示すので、usernameがnullである可能性があります.required=trueと書くと、クッキーが取れない場合に異常が放出されます.
普通にクッキーを書く

response.addCookie(cookie);// HttpServletResponse   cookie     。

SpringMVC方式でクッキーを書くのは普通の方式でクッキーを書くのと変わらないが、現在の方法がnullを返す、つまりページを歩いてジャンプしていないと、クッキー値をクライアントに書くことができない.
js方式でクッキーを書く
ジャンプ以外のリクエストではクッキーは書けないので、jsでクッキーを書くことができます.

var exdate=new Date(); 
var expireDays=365; //   cookie     
exdate.setTime(exdate.getTime() + expireDays*24*3600*1000);
document.cookie = "username=" + $("#username").val() + ";expires=" + exdate.toGMTString() + ";path=/";//              cookie,       。cookie       GMT     。
document.cookie = "password=" + $("#password").val() + ";expires=" + exdate.toGMTString() + ";path=/";
document.cookie = "isAutoLogin=1;expires=" + exdate.toGMTString() + ";path=/";
//document.cookie = ''        cookie  

js方式読み取りクッキー

function getCookie(c_name){
     if (document.cookie.length>0){
	  c_start=document.cookie.indexOf(c_name + "=")
	  if (c_start!=-1){ 
	    c_start=c_start + c_name.length+1 
	    c_end=document.cookie.indexOf(";",c_start)
	    if (c_end==-1) {c_end=document.cookie.length}
	    return document.cookie.substring(c_start,c_end)
	    } 
	  }
	return ""
	}

クッキー自体は中国語の記憶が許されないので、事前に文字をトランスコードする必要があります.トランスコードはescape,unescapeを使用できます.具体的な使い方はネットで検索できます.