有點(diǎn)疑問(wèn),我每次改變一次Session里的值,我都會(huì)重新設(shè)置
Cart cart=(Cart)request.getSession.getAttribute("cart");不是獲取了Session對(duì)象,然后轉(zhuǎn)變了Cart對(duì)象嗎,調(diào)用完addGoodsInCaer方法,改變了Cart里面的值,不用再request.getSession.setAttribute("cart",cart)嗎?還是說(shuō)一開始獲取的Cart對(duì)象就是Session對(duì)象?會(huì)隨的Cart的改變,Session跟著改變?
2016-07-31
我理解的是session中的值是動(dòng)態(tài)的,不需要覆蓋保存,不像cookie里的值變了就要重新覆蓋保存
2016-08-05
if(request.getSession().getAttribute("cart")==null)
{
Cart cart = new Cart();
request.getSession().setAttribute("cart",cart);
}
Cart cart = (Cart)request.getSession().getAttribute("cart");
if(cart.addGoodsInCart(item, Integer.parseInt(number)))
{
return true;
}
else
{
return false;
}
一次會(huì)話中最多只會(huì)創(chuàng)建一個(gè)Cart對(duì)象,以鍵值對(duì)的形式保存在session里(值是object類型),你通過(guò)鍵值得到的還是那個(gè)對(duì)象,不需要覆蓋保存。