我是把要购买的东西的价格存到application的
  我是想问。。如何实现计算功能有没有人贴个代码我参考下?谢谢就差这一步了

解决方案 »

  1.   

    建议不存到Application里,存到Sessions中或是数据库中
                      int bookId = Integer.parseInt(request.getParameter("id"));//获取要买那本书
    String bookName = request.getParameter("bookName");
    float bookPrice = Float.parseFloat(request.getParameter("bookPrice"));
    String buy = request.getParameter("buyNum");//要买数量
    int buyNum = 1;
    if(buy != null && !"".equals(buy))
    buyNum = Integer.parseInt(buy);

    OrderDescBean odb = new OrderDescBean();//这个
    odb.setBookId(bookId);
    odb.setBookName(bookName);
    odb.setBookPrice(bookPrice);
    odb.setOrderNum(buyNum);
    odb.setOrderPrice(odb.getBookPrice() * odb.getOrderNum());
    Map bookCar = (Map)request.getSession().getAttribute("bookCar");
    if(bookCar == null)
    {
    bookCar = new HashMap();
    bookCar.put(bookId, odb);
    }else{
    bookCar.put(bookId, odb);
    }
    /*OrderDescBean odb = new OrderDescBean();
    odb.setBookId(bookId);
    odb.setBookName(bookName);
    odb.setBookPrice(bookPrice);
    odb.setOrderNum(1);
    odb.setOrderPrice(odb.getBookPrice() * odb.getOrderNum());
    Map bookCar = (Map)request.getSession().getAttribute("bookCar");
    if(bookCar == null)
    {
    bookCar = new HashMap();
    bookCar.put(bookId, odb);
    }else{
    OrderDescBean orderD = (OrderDescBean)bookCar.get(bookId);
    if(orderD == null)
    {
    bookCar.put(bookId, odb);
    }else{
    orderD.setOrderNum(orderD.getOrderNum() + 1);
    orderD.setOrderPrice(orderD.getBookPrice() * orderD.getOrderNum());
    bookCar.put(bookId, orderD);
    }
    }*/
    request.getSession().setAttribute("bookCar", bookCar);
    request.getRequestDispatcher("/jsp/displayBookCar.jsp").forward(request, response);