> 文章列表 > 购物车--订单模块,练习完成

购物车--订单模块,练习完成

购物车--订单模块,练习完成

目标:

        在购物车页面,增加一个创建订单的超链接。通过创建订单,在Order表里新增一条数据,同时把session中的订单条目都保存到数据库中

1、创建两个表,orders用来具体存储每一个订单的细节,order_用来存储某个用户对应的订单号。id都设计为自动增长

2、写一个order类用来对应order_

 

3、给orders类加一个order属性,order里对应的id对应数据表orders里的oid。 

4、写一个orderdao负责向数据表order_ 中添加订单记录。由于我们order_表中的id设计的是自增长,所以每个记录uid都会自动分配一个id。现在我们把uid存进数据库后还要拿着这个分配的id赋值给order本身,便于之后使用。

注意:在 Java 中,可以使用 PreparedStatement 的 getGeneratedKeys() 方法来获取在数据库中自动生成的键值。

 5、再来一个ordersdao类用来把orders类的数据保存到OrderItem表中

 6、我们要在购物车页面加一个超链接便于跳转

7、最后一步:写ordercreate的servlet。

需要完成的操作有:1. 首选判断用户是否登陆,如果没有登陆跳转到登陆页面
                                2. 创建一个订单对象,并设置其所属用户
                                3. 把该订单对象保存到数据库中
                                4. 遍历session中所有的订单项,设置他们的Order。 然后保存到数据库中
                                5. 清空session中的订单项
                                6. 最后打印订单创建成功 

这里其实与之前板块有一个呼应,很多人不明白之前的用户模块的servlet在处理用户登录时用了这句request.getSession().setAttribute("user", user);把数据存进session中,这里第一步判断用户是否登录就用到了这个细节。

到这里大功告成,我们来完整的用一下这个功能。

 

 

 

 

 

最后附上整个练习的代码结构