jsp中获取session中的map对象

来源:互联网 发布:淘宝图片太大怎么截 编辑:程序博客网 时间:2024/05/21 17:07

最近练习书上案例,用struts2标签库获取session中键值的时候遇到了一些问题,不知道如何迭代session中的map型对象。

//CartItem.javapublic class CartItem extends ActionSupport{      private Book book;      private Integer quantity;      private BigDecimal price; //省略getter setter  }  
//Book.javapublic class Book {private Integer bid;private String author;private String title;private String isbn;private BigDecimal price;//省略getter setter  }

//OrderAction.javapublic String addOrder() {  //添加订单  //获取session中的user信息和cart订单信息        OrderDao orderDao = new OrderDao();          OrderitemDao itemDao = new OrderitemDao();          Orderitem orderitem;          //存放于order订单中        Order order=new Order();           order.setUserinfo(user);          order.setUserId(user.getUserId());          order.setTotal((Double) session.get("total"));          order.setAddress(address);          order.setZipcode(getZipcode());          try {              orderDao.add(order);              CartItem item;              Set keys = cart.keySet();              if(keys !=null){                  Iterator iterator = keys.iterator();                  while(iterator.hasNext()){                      Object key = iterator.next();                      item = (CartItem) cart.get(key);                      orderitem = new Orderitem();                      orderitem.setBooks(item.getBook());                      orderitem.setOrder(order);                      orderitem.setQuantity(item.getQuantity().doubleValue());                      itemDao.add(orderitem);                  }              }             //......        }            

在jsp中获取session中的map对象时,用value.属性值,

若要获取的对象不止一层关系,则用value.子对象类名.子对象属性名

注意此处的book是子属性的类名而不是action中的对象名

<s:iterator value="#session.allcart" id="c">  <tr>      <td><s:property value="value.book.title"/></td>      <td><s:property value="value.book.price"/></td>      <td><s:property value="value.quantity"/></td>      <td><s:property value="value.price"/></td>  </tr>  </s:iterator>  



原创粉丝点击