图5-3 register.jsp 用户注册界面
用户注册页面为register.jsp,用户输入相应信息后点击登录会触发 js程序,判断验证输入的内容是否为空,验证成功后将form表单提交给registerAction.jsp。在这个registerAction.jsp这个处理页面里会调用getMemberByName方法。
5.1.3商品模块功能设计
在首页中中,会有一个推荐商品的模块如图5-4,点击推荐商品旁边的更多,就会到畅销商品界面中,如图5-5所示。
16
如图5-4 推荐商品
推荐商品的界面是tnewGoods.jsp,查询推荐商品的sql语句为String sql=\foods where newfoods=1 order by hit desc limit 3\将查询的结果封装在集合里,然后用循环来将单个商品显示出来。
调用ToolsDao中的getNewGoods(),将查询到newfoods=1的商品保存到good中。tnewGoods.jsp中,通过循环,将查询到的信息获取,放在相应的位置上。
17
图5-5 畅销商品界面
畅销菜品的界面是hotGoods.jsp,查询畅销商品的sql语句为String sql=\* from foods order by hit。HotgoodsServlet.java调用GoodsDao中的getHotGoods()方法查询点击率高菜品,并将查询到的信息保存至hotGoods中,Servlet通过request中转发给hotGoods.jsp, hotGoods.jsp通过HotgoodsServlet获取hotGoods中存放的数据,并且在相应的位置分别获取对象的值。图5-6,详细的解释了畅销菜品的运行流程。
18
图5-6 畅销菜品运行流程
在hotGoods.jsp页面代码中,有一个判断,代码如下:
<%String name=(String)session.getAttribute(\); \>
图5-7 购买流程图
19
并且点击这张图片,系统会通过goodsID响应CartAddServlet,再利用GoodsDao中的方法将菜品加入购物车。
5.1.4购物车模块功能设计
购物车即用户所选中,但尚未付款成交的商品。如图5-8 购物车界面。
图5-8 购物车界面
当用户将菜品加入购物车时,会请求响应CartAddServlet,先获取该商品的id ,调用GoodsDao中的getGoodsById()方法,将该商品的信息查询出来,加入到Session cart中,实现代码如下:
ArrayList cart=(ArrayList)request.getSession().getAttribute(\);
if(cart==null){ } request.getSession().setAttribute(\, cart); ServletContext sc=this.getServletContext(); RequestDispatcher rd=sc.getRequestDispatcher(\); rd.forward(request, response); 20
cart=new ArrayList(); cart.add(newci); for(int i=0;i