购物网站是怎么实现SESSION,一个一个把所要的东西放在SESSION,有谁能给个代码看看,谢谢

解决方案 »

  1.   

    ? session 是现成的, 拿着用就是啦你去老紫竹的  www.java2000.net上看看吧。 他写了个图书的项目。 自己学习学习吧
      

  2.   

    就是把“东西”添加到List中,然后把List放入Session中就行了。
      

  3.   

    呵呵,确切地说,应该是session实现了购物网站,而不是网站实现session.
      

  4.   

      List list;
         list.add(name);
          session.setAttribute("list",list);是这样吗,但提示有误
      

  5.   

    书只 有名字吗,如果有多个属性,例如价格,作者,等,建议还是封装到一个图书类中,再将类存入Session中吧。
    例如是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();
       ....
    }
      

  6.   

    <code>
       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>
    希望这个有用
      

  7.   

    public class AddItemToCartAction extends Action
    {
    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;
    }
    }
    上面是初始化显示商品的代码,这个是想购物车中添加商品。
      

  8.   

    数据库及java相关技术讨论群57262558
      

  9.   

    先把东西放到对象里去,然后再把对象放到list里去。再把list放到session里去。
      

  10.   

    <a href="com.servlet.Shop?shangp=<%=list.get(i).getImage_name()%>&&price=<%=list.get(i).getPrice() %>">servlet</a>这样能传入SERVLET吗 com.servlet.Shop 这个是servlet 
      

  11.   

    这是SERVLET得到值
    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取出来还是只有一个值
      

  12.   

    HttpSession session=request.getSession(); Map cart=(Map)session.getAttribute("cart");

    if(cart==null){
    cart=new HashMap();
    session.setAttribute("cart", cart);
         }                         request.setAttribute("cartobj", cart.values());
      

  13.   

    貌似购物车的实现是用Map吧,不是List
      

  14.   

    是如何一个一个放入SESSION的?
      

  15.   

    //提交后转入SERVLET
    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){}%>