第一步:web頁面中js實現將cookie保存到客戶端
/*--------------------------------------------
* 將用戶設置的分頁顯示行數保存到cookie中
* autor tongsl
* 2011-11-19
* param cookieName cookie的名稱
* param callback 保存完cookie後的回調函數
--------------------------------------------*/
function setPageCountCookie(cookieName,callback){
var cookie = cookieName+ "=" + $("#pageCount").val();
var date=new Date();
date.setTime(date.getTime() + 30*24*3600*1000);//expires單位爲天
cookie += ";expires=" + date.toGMTString();
//cookie += ";path=" + path;//指定可訪問cookie的目錄
//cookie += ";domain=" + domain;//指定可訪問cookie的域
document.cookie = cookie;
callback;
}
第二步:在後臺實現讀取客戶端(用戶的機器)上保存的cookies
/**
* 獲取分頁顯示行數
* @author tongsl
* @param key
* @param deFault
* @return
*/
public static int getPageCount(HttpServletRequest req,String cookiename,String deFault){
Cookie[] cookieList = req.getCookies();
int pageCount = Integer.valueOf(deFault);
if(cookieList != null){
for(Cookie cookie: cookieList){
if(cookiename.equals(cookie.getName())){
pageCount = Integer.valueOf(cookie.getValue());
break;
}
}
}
return pageCount;
}
/**
* 設置分頁顯示行數
* @author tongsl
* @param key
* @param pageCount
* @param deFault
*/
public static void setPageCount(HttpServletResponse resp,String cookiename,String pageCount,String deFault){
Cookie c = new Cookie(cookiename,isEmpty(pageCount)?deFault:pageCount.trim());
resp.addCookie(c);
}