java毕业设计——基于JSP+JavaBean+sqlserver的在线购物系( 二 )


2. 用户登录
用户登录窗口如图10
图10用户登录
如果用户输入的用户名存在,并且冻结字段的值不为1,则判断用户输入的密码是否正确,如果密码也正确,则成功登录,否则提示登录失败 。
5.2.6购物车实现过程
购物车主要包括所选图书的添加,查看购物车,单件图书购买数量的修改,清空购物车4部分 。
1. 添加到购物车.jsp
主要采用类型的变量cart来存储购物数据的,被保存在中,然后将图书信息保存到cart中,主要代码:
String ISBN=chStr.chStr(request.getParameter("ISBN"));String sql="select * from tb_bookinfo where ISBN='"+ISBN+"'";ResultSet rs=connDB.executeQuery(sql);float price=0;if(rs.next()){price=rs.getInt("price");}bookelement mybookelement=new bookelement();mybookelement.ISBN=ISBN;mybookelement.price=price;mybookelement.number=1;boolean Flag=true;Vector cart=(Vector)session.getAttribute("cart");if(cart==null){cart=new Vector();}else{for(int i=0;i
2. 查看购物车
查看购物车页面.jsp的顶部首先需要判断购物车是否为空,如果为空将页面直接跳转到购物车为空页面.jsp,否则显示购物车信息 。显示购物车信息主要是将保存在中的数据利用for语句输出到IE中,同时根据图书的定价,购买数量自动计算每种图书的金额和购物车中的全部图书的合计金额 。代码如下:
省略
图11 购物车
如图11由于在购物车中并没有保存图书的名称,所以在获取图书信息时,还需根据图书的ISBN号重新到数据表中查图书名称,代码如下:
【java毕业设计——基于JSP+JavaBean+sqlserver的在线购物系】 ResultSet rs_newbook=connDB.executeQuery("select * from tb_bookinfo where ISBN=‘“+ ISBN+”’”);If(re_book.next()){Bookname=re_book.getString(“Bookname”);3. 从购物车中移去指定图书实现从购物车中移去指定图书可以通过Vector类的removeElementAt(int index)方法实现,非常方便 。页面cart_move.jsp代码为:Vector cart=(Vector)session.getAttribute("cart");try{String ID=request.getParameter("ID");int id=Integer.parseInt(ID);cart.removeElementAt(id);//移去指定图书信息session.setAttribute("cart",cart);response.sendRedirect("cart_see.jsp");}catch(Exception e){}%>
4. 清空购物车
实现的方法很简单,只需要将保存在中的购物信息清空即可,清空购物车页面.jsp代码为:

java毕业设计——基于JSP+JavaBean+sqlserver的在线购物系

文章插图
.(“cart”);
.(“.jsp”);
5.2.7生成订单实现过程
生成订单时,不但要保存用户订单中所购买的图书信息和订单信息,同时还需要返回一个可供用户随时查询的唯一订单号 。
用户查看购物车页面中的“去收银台结帐”超连接即可进入到收银台页面填写订单信息,在该页面中系统会根据用户登录的用户名自动填写用户基本信息,除用户名不可更改外,其他的均可修改,收银台页面的运行结果如图12
图12收银台
在收银台页面.jsp中,首先应用判断用户是否已经购物,然后再判断用户是否登录,如果用户没有购物或是没有登录都将给予提示并返回到网站首页 。关键代码为: