欢迎来到天天文库
浏览记录
ID:43768161
大小:75.00 KB
页数:3页
时间:2019-10-14
《基于Session实现的购物车》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于Session技术的购物车的设计与实现摘要:在电子商务网站屮,购物车是相当重要的部分,它用来装载购物者购买的商品,本文给出了Web平台的购物车系统的功能描述,以及对购物车进行设计的总体规划扣设计思路,分析了基于JSP+Session技术的购物车的设计实现,并且给出了重要部分的源代码。关键词:电子商务网站;购物车;JSP;Session随着Web技术的迅速发展,现代电子商务已经集中于网上商店的建立和运作上,而购物车(Shop—pingCart)是网上簡店最重要组成部分Z—,它就像一台虚拟的超市购物车,可以放进商
2、品,也可以拿出商品。实现购物车有很多方式,如把购物车里的商品存在数据库里,或者使用javabean存储商品,再或者用Session或者Cookie这种方式存储,这里只讨论基于Session对象的购物车的设计实现。1购物车系统功能概述在线购物是目前非常流行的趋势,商务网站的经营者无需准备大量的创业基金,就可以架设网站开立网络商店。在商务网站的购物车系统功能之中,应首先包含用户登录界面,在用户进行登录后,可以完成查看产品类型、查看购物车内容、订购产品、显示订购单及删除指定定单等相应功能,若成功订购,还可以按照网页指示
3、用银行划拨或信用卡方式进行支付。2购物车的总体设计与分析2.1购物车系统分析如图1所示,根据购物车的基木功能,按照系统开发的基本方法,将购物车进行如下分解:首先用户在登录页而中登录网站,进入显示产品信息的网页,在该网页中,设有“产品类型”、“查看购物车”、“显示订购单”等超级链接。此时若要购物,便可在相关产品后面的表单屮输入购买数量,将英放入购物车。若用户点击“查看购物车”超级链接,下方框架将会显示购物车内的产品情况,此时还可进行产品删除的操作。若用户点击'“显示订购单”超级链接,下方框架将会显示订购单网页,用户
4、在对订单细目核对后,便可进行订购了。2.2购物车主体设计这里我们只分析购物车的主体设计中重要的两个方面:一是在网页中显示所有商品信息,同时用户可以在此网页中输入欲订购的产品数量,按下“放到购物车内”按钮,便可将其写入相应的Session屮;二是读取用户Session中用户已经选择放在购物车中的产品信息并在页面当中显示出来,同时各个产品后面有一个“删除”超级链接,用来删除指定的产品。3购物车模块实现3.1用户购买商品首先设计用户购买商品的页面goods,jsp,用表格描述商品的信息,用户要购买的商品请求通过表单提交
5、到处理程序goodsprocess.jsp,其屮商品名称,单价,厂家名称等信息通过表单中的隐藏域传递到处理页面中,购买数量通过输入记录在goodsnum中,当用户确定了购买簡品及数量,点击“放到购物车内”,即可实现购买该和簡品,效果示例如下(图2)。u必名悻价厂■iiwaal»*CUrISOO00N«t«rlI190000;心L-SSSSU图2用户购买商品页面2.2显示用丿v购买商品当用户输入商品数量,点击“放到购物车内”按钮后,页面跳转到goodsprocess.jsp,这个页面会将指定的商品写入“购物车”屮,
6、然后读収用户放入购物车的产品并显示出来,同时各个产品后面有一个“删除”超级链接,当用户在购物车内点击“删除”超级链接时,本程序将从该用户“购物车”屮删除指定的产品,显示新的购物信息,效果示例如下(图3)r#「nW*僉竹t内;ironisoo.ooi(Uier241■uL«serPrinttr]900000>EFSOII[l・•■*■■■■123I图3购物信息4主要代码3.1购买商品商品放人“购物车”时,在JSP坏境下,Session是比较理想的购物车制作对象,但是Session对象是由服务器端创建和保存的,使用S
7、ession会给服务器带来一定的负担,这种负担随着Session个数的增加而增加。为了降低服务器的负担,在实现过程川我们用Vector类集存储所购买货物,同时用户购买的商品信息用数组对彖goods来记录,分别记录用户所购簡品的商品名称,单价,厂家及数量,通过Vec—tor对象的addElement方法放人购物车内,注意的是,购买时可能重复购买一种商品,那么对应购物车来说,应该只是商品的数量发生变化,所以在执行放入购物车的操作时,要对购买的商品进行判断,看其是否已经存在,存在则改变该商品的数量,不存在则直接放入。主
8、要代码如下:<%Vectorgoodslistgoodslist=(Vector)session・getAttributc(Mgoodscart):if(goods1ist—nu11){goodslist=newVector():goodslist・addElement(goods);}else{intnl」m-0;fOr(intx-0;x
此文档下载收益归作者所有