java 存储cookie_java设置cookie,存储和读取 | 学步园
/**【【【【【【【【【【這里是存儲(chǔ)的一種方式】】】】】】】】】】】】】
* 設(shè)置cookie:根據(jù)用戶的選擇設(shè)置默認(rèn)樹
* 將設(shè)置的axis的value存入cookie
*/
@RequestMapping(value="default_axis.jspx")
public String setDefault_docTree(HttpServletRequest request,HttpServletResponse response,HttpSession session){
RequestProxy proxy = RequestProxy.fromRequest(request);
//這里設(shè)置默認(rèn)樹
Cookie defaultCookie = null;
String defaultAxisId = proxy.getChineseParameter("defaultAxisId");
if(!StringUtil.isEmpty(defaultAxisId)){
TAdminuser user = (TAdminuser)session.getAttribute(Global.SESSION_USER_NAME);
if(user != null){
defaultCookie = new Cookie(user.getId().toString(), defaultAxisId);
defaultCookie.setPath("/");
defaultCookie.setMaxAge(365*24*24*60);
response.addCookie(defaultCookie);
}
}
return "redirect:doc_tree.jspx";
}
cookie的name可以是動(dòng)態(tài)的值!
defaultCookie = new Cookie(user.getId().toString(), defaultAxisId);
Cookie[] cookies = request.getCookies(); //【【【【【【【【【【讀取】】】】】】】】】】】】】
String oldValue = "";
List cookiesList = new ArrayList();
if(cookies != null){
for (int i = 0; i < cookies.length; i++) {
if (cookies[i].getName().equalsIgnoreCase("hotel_name_id_cookie")) { //注意用equalIgnoreCase 而不是 ==
oldValue = cookies[i].getValue();
try {
oldValue = URLDecoder.decode(oldValue, "UTF-8");
String[] arrs = oldValue.split(";");
for (int j = 0; j < arrs.length; j++) {
String _hotel_cd = arrs[j].substring(0,
arrs[j].indexOf("*"));
String _hotel_Name = arrs[j].substring(arrs[j]
.indexOf("*") + 1);
Hotel h = new Hotel();
h.setS_HotelCd(_hotel_cd);
h.setS_Hotel(URLDecoder.decode(_hotel_Name, "UTF-8"));
cookiesList.add(h);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
request.setAttribute("cookiesList", cookiesList);
String val = ""; //【【【【【【【【【【這里是存儲(chǔ)的另一種方式】】】】】】】】】】】】】
if(oldValue!=null && !oldValue.equals("")){
val = oldValue + ";" + hotelInfo.getHotel().getS_HotelCd()+"*"+hotelInfo.getHotel().getS_Hotel();
val = URLEncoder.encode(val,"UTF-8");
}else{
val = hotelInfo.getHotel().getS_HotelCd()+"*"+hotelInfo.getHotel().getS_Hotel();
val = URLEncoder.encode(val,"UTF-8");
}
Cookie cookie = new Cookie("hotel_name_id_cookie", val);
cookie.setPath("/");
cookie.setMaxAge(365 * 24 * 60 * 60);
response.addCookie(cookie); //一定要add,不然讀取的時(shí)候讀不到或者都是null
String val = "";
if(oldValue!=null && !oldValue.equals("")){
val = oldValue + ";" + hotelInfo.getHotel().getS_HotelCd()+"*"+hotelInfo.getHotel().getS_Hotel();
val = URLEncoder.encode(val,"UTF-8");
}else{
val = hotelInfo.getHotel().getS_HotelCd()+"*"+hotelInfo.getHotel().getS_Hotel();
val = URLEncoder.encode(val,"UTF-8");
}
Cookie cookie = new Cookie("hotel_name_id_cookie", val);
cookie.setPath("/");
cookie.setMaxAge(365 * 24 * 60 * 60);
response.addCookie(cookie); //一定要add,不然讀取的時(shí)候讀不到或者都是null
cookie的name可以是動(dòng)態(tài)的值!cookie的name可以是動(dòng)態(tài)的值!
總結(jié)
以上是生活随笔為你收集整理的java 存储cookie_java设置cookie,存储和读取 | 学步园的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: java机试_java机试要点
- 下一篇: java 扑克牌排序_java 怎么写c
