购物网站是怎么实现SESSION,一个一个把所要的东西放在SESSION,有谁能给个代码看看,谢谢
解决方案 »
- 有没有哪位遇到过这个关于Virgo启动的问题?
- jsp
- java.sql.SQLException: OALL8 处于不一致状态
- struts2既能批量删除又能单个删除求大手指导
- jsp中如何取list的size?
- jsp 跟 php 这两种语言在开发站点上的优势
- 关于新版Resin-pro-3.1.4与旧版不一样的问题
- 关于XML与数据库同步的问题,还请大侠们指教
- spring + springmvc + mybatis 使用工具生成对于的javabean 类出错。
- problems occurred copying the selected resources
- java web 开发中,能不能配置一写application 长量,tomcate启动后就加载
- ActiveX插件问题?请高手帮忙啊
list.add(name);
session.setAttribute("list",list);是这样吗,但提示有误
例如是Book类,
Book book = new Book();
rs中的结果封装到一个个的Book实例中。
将每个实例都添加到ArrayList中,最后将这个ArrayList存入Session就好了。
在Action中,貌似要写成,request.getSession().setAttribute("ArrayList",ArrayList).
前台要显示的时候,从Session取出来显示。
ArrayList al = (ArrayList)Session.getAttribute("ArrayList",ArrayList);
然后对al做循环,取出每本书。
for(int i=0;i<al.size();i++)
{
Book book = new Book();
book.getXXX();
....
}
public class ListProductAction extends Action
{
public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)throws Exception
{
ActionForward forward=null;
List productList=new ArrayList();
ShoppingCartDAOImpl shoppingCart=new ShoppingCartDAOImpl();
HttpSession session=request.getSession();
Pagination pagination=(Pagination)session.getAttribute("Pagination");
System.out.println("pagination_list");
if(pagination==null)
{
pagination=new Pagination();
System.out.println("new pagination_list");
}
productList=(ArrayList)shoppingCart.listProductions(pagination.getStart(),pagination.getRowPerPage());
session.setAttribute("Pagination", pagination);
session.setAttribute("productList", productList);
Cart cart=(Cart)session.getAttribute("cart");
if(cart==null)
{
cart=new Cart();
}
session.setAttribute("cart", cart);
User user=(User)session.getAttribute("user");
if(user!=null)
{
if(user.isAdmin()==true)
{
forward=mapping.findForward("managerProduct");
return forward;
}
}
forward=mapping.findForward("list");
return forward;
}
}</code>
希望这个有用
{
public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)throws Exception
{
ActionForward forward=null;
int productid=Integer.parseInt(request.getParameter("id"));
String productname=request.getParameter("name");
double productprice=Double.parseDouble(request.getParameter("price"));
ProductService productService=new ProductService();
productService.minusProductOne(productid); Product product=new Product();
product.setId(productid);
product.setName(productname);
product.setPrice(productprice);
HttpSession session=request.getSession();
Cart cart=(Cart)session.getAttribute("cart");
cart.addItem(product, 1);
session.setAttribute("cart", cart);
forward=mapping.findForward("list");
return forward;
}
}
上面是初始化显示商品的代码,这个是想购物车中添加商品。
String shangp=request.getParameter("shangp");
String price=request.getParameter("price");
加入ARRAYLIST
ArrayList<Shop_items> list=new ArrayList<Shop_items>();
Shop_items shitem=new Shop_items();
shitem.setShangp(shangp);
shitem.setPrice(price);
list.add(shitem);
HttpSession session=request.getSession();
//
放入SESSION
session.setAttribute("list", list);
传入到JSP取出来还是只有一个值
if(cart==null){
cart=new HashMap();
session.setAttribute("cart", cart);
} request.setAttribute("cartobj", cart.values());
String shangp=request.getParameter("shangp");
String price=request.getParameter("price");
ArrayList<Shop_items> list=new ArrayList<Shop_items>();
Shop_items shitem=new Shop_items();
shitem.setShangp(shangp);
shitem.setPrice(price);
if(list.isEmpty()==true){
list.add(shitem);
}else{
list.addAll(list);
}
if(list==null||list.size()<=0){
response.sendRedirect("../fun/image_info.jsp");
}else{
HttpSession session=request.getSession();
session.setAttribute("list", list);
response.sendRedirect("../fun/shopping.jsp");
}
//JSP取出,取出来只有一个,是不是放入SESSION的问题,请高手指点下
<%
try{
ArrayList<Shop_items> list2=new ArrayList<Shop_items>();
list2=(ArrayList)session.getAttribute("list"); if(list2!=null){
for(int i=0;i<list2.size();i++){
%>
<TR>
<td align="center"> <%=list2.get(i).getShangp()%></td><td > <%=list2.get(i).getPrice()%></td>
</TR>
<%} }}catch(Exception e){}%>