基于JSP的网上购物系统研究
汪东芳 薛丽香
摘要:传统的商品交易与销售模式已经不能满足人们的需求。越来越多的人正在逐步接受网上购物这种新的购物方式,购物网站也得到越来越多人的关注。文章使用JSP技术设计了一款网上购物系统,可以实现网上图书的销售与购买操作。
关键词:购物网站;网上购物系统;JSP
1 研究现状
网络的出现与迅速发展和电子商务的逐渐成熟,不仅改变了我们记录和传播知识的符号,也改变了我们的交易方式,而且将会对我们的思维方式、工作方式和生活方式产生根本性的影响。网上购物在资源量、经济、销售手段等方面的优势,都将成为电子商务必将替代传统交易模式的前提。而所有这些都需要通过网络语言实现,JSP就是实现电子商务走向应用的关键技术之一。
2 需求分析
2.1 数据库的需求分析
经过市场调查,网上购物系统的主要需求在于各种信息的提供和保存,数据的更新与查询,要求数据库结构能及时而充分地满足各种信息的输入输出。文章设计的是一个专门销售图书的网上购物系统。该系统的总体需求如下:(1)用户分一般用户和管理员用户。(2)订单分单张详细订单和总订单。(3)每一本图书都从属于一种类型。(4)一个用户可以购买多本图书。(5)一个用户对应一张订单列表。(6)一个列表对应多张订单。(7)管理员信息:用户名、密码。(8)普通用户:用户ID、用户名、密码。(9)图书:图书编号、图书名称分类等。(10)图书分类:分类编号、分类名称。(11)订单列表:订单编号、图书编号、购物数量。(12)订单:订单编号、用户编号。
2.2 关系实体图
本设计实体有:管理员信息实体、用户信息实体、图书实体、图书分类实体、订单实体、订单列表实体,如图1所示。
3 系统设计
文章所设计购物系统由客户界面功能模块和管理员界面功能模块两个模块组成。客户界面功能模块的主要功能:注册用户进行图书的购买,查看自己的购物车和查看订单等。管理员界面的主要功能:管理员进行用户管理,图书的添加与修改,图书类的添加与修改,订单管理等操作。如图2所示。
在线购书功能模块中的分页处理功能,要从数据库中读出数据,就要在图书操作类中定义一个boolean型的booksearch()的方法。取出数据后就要做分页处理,分页功能同样是在book search()方法体下实现,absolute()是用来定位的,然后又用了一个do while循环语句,读出所有数据的属性列的值。
try{
rs=stmt.executeQuery(sqlStr),
rs.absolute((page-1)*pageSize+1),
No.13
July,2016
return false,
}
这里的关键问题就是,在取完一页数据后,该如何去取下面的数据,absolute()在这里就让程序在取完一页数据后知道该从哪里取下一页要显示的数据,do while的作用就是从数据表中,读出每一个属性列,每次读完一条指向下一条,直到页尾处使用absolute()定位。这部分程序实现了分页与读取数据到页面的功能。
4 问题与展望
4.1 设计过程中的关键问题
设计初期建立好工程框架是不可少的。特别是JSP的项目,每一个包和文件夹对于程序的顺利运行都是至关重要的。对于每一个JSP项目而言,都应该有自己相对应的Web-INF文件夹,在它下面放的是每一个TavaBean的字节码文件,最好不要把原文件和字节码文件放在同一级目录下。每次编译JavaBean都要将生成的字节码文件放在Web-INF\class\目录下。在src文件夹下面放置自己创建的Java包。
在调试时并不是所有错误都能从页面信息中反馈,特别是sOL查询语句的错误。这时就需要通过查看服务器运行日志文件来发现错误。
4.2 今后可扩展方向
网站有义务承担用户在使用电子商务平台交易时所带来的风险。要加强网站的安全性,则必须使用MVC2模式来构架网站。将Struts框架技术和Servlet技术引入下一步的开发中。将现有的模块进一步细分。编写Servlet控制模块来协调M层,也就是信息处理层和V层,也就是数据信息显示和请求层。引入Struts框架技术的最大好处不仅是简化大型项目的设计流程,还一定程度提高了安全性。
5 结语
本设计采用了较为简单的模块化处理思想。JSP+JavaBean的设计模式,就是将网页显示和后台处理程序分离开,这样既提高了安全性,又减轻了今后维护的工作强度。在设计当中也是处处体现了模块化的思想,比如用户模块、管理员模块的划分,再如用户模块中的购物车模块和订单模块的划分。它们虽然相互独立,但却又联系紧密。这样就提高了程序的可读性和稳定性。