董 婷
(榆林学院 信息工程学院,陕西 榆林 719000)
基于JSP网上购书系统的设计与实现
董 婷
(榆林学院 信息工程学院,陕西 榆林 719000)
针对传统销售方式中不便于管理、效率低等缺点,将电子商务技术和计算机技术结合起来,开发出管理更便利、效率更高的网上图书销售系统。本系统基于B/S三层体系结构和Struts开发框架,采用JDBC数据库访问技术和Tomcat应用服务器等关键技术,并对系统功能进行分析,得出4个功能模块:图书浏览、购物车管理、订单管理和用户管理。功能的实现是基于JSP.技术与JAVA相结合,最终设计并实现了一个功能强大的图书销售系统平台。
电子商务技术;B/S;Java;JSP技术
我国第一家网上书城于1997年由杭州市新华书城开办,该店只维持了1年最终便以失败告终[1]。经过十几年的发展,今天我国的网上书城已经颇具规模,能够在网上买卖图书的网站已经有数百家,并形成了各种不同的发展模式和格局,其营业额在图书零售市场上约占5%[2]。但是各网上书城的盈利情况良莠不齐,生生死死不计其数,领跑的始终是当当网和卓越亚马逊两家,二者在网店经营中一直保持了优势地位,并占据整个网上书城营业额的80%[3]。
JDBC(Java Data Base Connection)——Java数据库连接技术,是一种执行SQL语句的Java API的技术,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成[4]。
JSP(Java Sever Page)——Java服务器端页面技术,它使用Java编程语言编写类似XML的标签,用来封装产生动态网页的处理逻辑[5]。存在于服务端的资源的应用逻辑可以被网页通过标签访问[6]。
Struct是一种用于开发Java Web程序的框架。Struts是在JSP模型的基础实现了MVC设计模式的WEB框架。它的目的是为了减少在运用MVC设计模型来开发Web应用的时间,它将可以完成其中一些繁重的工作。Struts有其自己的控制器,同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。在模型层,Struts可以很容易的与数据访问技术相结合,例如,JDBC技术。
Tomcat也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache。我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet。Tomcat是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性,越来越受到人们的重视。本系统的框架如图1所示。
图1 框架图Fig. 1 Frame diagram
可行性分析,是用最小的代价、在尽可能短的时间内确定问题是否能够解决。在澄清了问题定义之后,分析员首先应该导出系统的逻辑模型,然后从系统逻辑模型出发,探索出若干种可供选择的主要解法。最后仔细研究每种解法的可行性。系统的可行性分析,是针对要设计的系统,研究其设计是否存在内外部的必要条件,包括技术上、资金上、经济上、人力资源以及组织管理上的必要条件,同时要分析在目前条件下是否有必要设计这样一个系统。
根据综合分析,要最终实现网上书城系统,需要用到JAVA EE技术、数据库技术(JDBC及Mysql),以及软件工程的具体方法等内容。而这些技术在当前IT行业看来都已经发展的相当得成熟。因此,从技术上的角度考虑,最终实现该网上书城系统是确实可行的。
从经济上来考虑,这方面的投资少,回收快,而且无所谓存货等,所以特别适合小商店和个人在网上创业。从启动资金来看,传统的地面开店,门面租金加装修费,还有首批进货资金等等,少说也需要几万元的启动资金或者更多。而网上开店所需的启动资金却少得多的多,只需要架设一台主机服务器,配备一定的操作人员就可以。
网上书城系统的界面设计时充分考虑用户的习惯,用户体验良好,操作简单;数据录入迅速、规范、可靠;统计准确;适应力强;容易扩充。
只要注册后的用户才能进行图书的购买,用户进入注册界面进行注册,在注册时要求输入的用户注册信息,其中主要包含用户名、密码、邮箱、验证码等。(注:用户必须有有效的邮箱,因为你确认注册后,系统会将该用户注册好时的校验码发到对应邮箱)。
点击结算后,进入购物信息页面,点击下一步后,首先去判断用户是否登录系统:如果没有登录,直接转到登录页面,登录后,然后继续购物操作。如果已经登录,继续进入填写收货信息页面,左上侧下拉select菜单是登录当前用户已经存在的多个地址,可以通过选择不同地址,直接显示相应地址到表单组件中,运用了Ajax请求技术,其他信息系统将会自动帮助填写,这样可以避免用户重复填写,方便用户再次购买。确认后清空购物车和cookie,更改数据表。
点击产品列表页面的购买,添加对应图书到购物车,(这里用到session,cookie技术,用session记录购物的全程)。当用户退出浏览器时购物车信息会存在cookie中,以便下次在同一机器上打开浏览器查看上次购买的信息,用户可以点击右上方的购物车查看购物详细信息,购物车记录每一种图书的图书名称,市场价,会员价,购买数量,以及所有图书的总价和相对市场价的节省金额。需要注意的是,在购物车中的商品并不一定是用户最终必须购买的商品,其只是一个购物意向,用户可以根据需要,在提交订单之前,随时修改购物车中的商品数量、或者取消购买。购物车中提供某一商品数量修改的功能,购物车中提供某一商品的删除功能,恢复删除的商品功能,提供继续购物链接,以上任何操作涉及到金额都会动态修改,购物车管理类图所图2所示。
图2 购物车管理类图Fig. 2 Shopping cart management class
其中控制类CartAction依赖Cart业务类和CartForm,Cart依赖数据访问类BookListImp,BookListImp依赖CartItem。
1)恢复删除列表
当用户从需要恢复删除的商品列表时,首先从session中得到购物车对象,接着把删除列表中商品添加到购买列表中,序列图如图3所示。
恢复删除列表的主要代码如下。
图3 恢复删除的商品序列图Fig. 3 Recovery of commodity sequence deletion
2)添加图书到购物车
当用户点击“购买”时,界面会通过Ajax方式异步发送一个add.do的post请求,参数标示为“id”,参数值为图书的主键,这个主键通过表单隐藏域存放在jsp页面中,ActionServer得到页面请求后,会在struts-config.xml中匹配对应的action,如下:
在add方法中,首先从session中得到购物车的实例cart并且得到post请求所携带的参数,方法为request.getParameter("id"),调用Cart类中的add方法添加图书主键到购物车中实例中,为了便于防止意外关闭浏览器,系统会保存于cookie中,最后响应用户请求,提示用户”购买成功。
添加购物车主要代码如下。
网上书城系统无论是在开发过程中,还是建成后的日常维护过程中,都需要进行严格的检测,以保证购书系统的服务质量。随着网上书城系统技术的日趋成熟、网上购书的优势日趋明显,会有更多的人参与到网上购书的浪潮中来,人类最终将迎接电子商务时代的来临。
[1] 邓子云,张赐著.JSP网络编程从基础到实践[M].北京:电子工业出版社, 2005.
[2] 王晓军,田中雨,刘跃军,等.JSP动态网站开发基础教程与实验指导[M].北京:清华大学出版社, 2008.
[3] 韩万江,姜立新.软件项目管理案例教程[M].北京:机械工业出版社, 2006.
[4] 徐峰,陈暄.UML面向对象建模基础[M].北京:中国水利水电出版社, 2006.
[5] 张海,藩著.软件工程导论[M].4版.北京:清华大学出版社, 2003.
[6] 梁循.数据挖掘算法与应用[M].北京:北京大学出版社,2006.
Design and implementation of online bookstore system based on JSP
DONG Ting
( School of Information Engineering,Yulin University,Yulin 719000,China)
According to the management, not for the traditional way of marketing in the defects of low efficiency, the combination of e-commerce technology and computer technology, online book sales system development management more convenient, more efficient.The system of B/S three layer structure and Struts development framework based on JDBC, the key technology of database access technology and Tomcat application server, and the functions of the system are analyzed, the four function modules: browse books, shopping cart management, order management and user management. The function implementation is based on the combination of JAVA and JSP. technology, the design and implementation of book sales system is a powerful platform.
electronic commerce technology;B/S; Java; JSP technology
TN711
A
1674-6236(2014)03-0011-03
2013–05–23 稿件编号:201305235
2012年榆林学院专项科研项目一般项目(12YK36)
董 婷(1981—),女,陕西岐山人,硕士,讲师。研究方向:软件工程。