参考:http://how2j.cn/k/cart/cart-tutorials/595.html
1、 Order 订单
2、OrderItem 订单项
订单项和订单的关系: 多对一
一个订单里有多条订单项
一个订单项,只会出现在一个订单里,
以下类中set、get方法省略
public class Order {
int id;
User user;//方便el直接取出用户名
}
public class OrderItem {
private int id;
private Product product;
private int num;
private Order order;
}
创建订单操作:
- 首选判断用户是否登陆,如果没有登陆跳转到登陆页面
- 创建一个订单对象,并设置其所属用户
- 把该订单对象保存到数据库中
- 遍历session中所有的订单项,设置他们的Order。 然后保存到数据库中
- 清空session中的订单项
个人分析:逻辑上:一个订单包含很多订单项。
实际bean设计时:在订单项中设置订单,数据库存储每一条订单项(订单项id,订单项对应产品id,产品数量,所属订单id)