基于JSP的网上书店的设计与实现.docx
《基于JSP的网上书店的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于JSP的网上书店的设计与实现.docx(30页珍藏版)》请在冰豆网上搜索。
![基于JSP的网上书店的设计与实现.docx](https://file1.bdocx.com/fileroot1/2023-1/28/bde47f6f-1031-40d4-a568-e8249eaf47fd/bde47f6f-1031-40d4-a568-e8249eaf47fd1.gif)
基于JSP的网上书店的设计与实现
摘要
随着Internet信息技术的高速发展,互联网已经成为人们进行交易的主要方式。
在信息时代,能够建立一个省时简单的购物环境,对商家和买方都是不小的诱惑,因此建立一个功能强大、操作简单的电子商物网站,对企业的发展至关重要。
本文介绍了以网上书店为代表的商务电子的发展状况、技术背景,具体讲述了如何使用JSP建立了一个网上书店系统,网上书店的建立流程、数据库设计、功能模块的设计,以及每一个功能模块的代码实现方法。
系统使用MyEclipse作为前台开发工具;使用MicrosoftSQLServer2005作为后台数据库的管理工具;使用的开发工具包是JDKVersion1.6;使用Tomcat-6.0作为Web服务器。
另外,本系统采用了JSP+Servlet+JavaBean(MVC)三层架构模式。
本系统采用B/S架构。
主要有两个参与者:
客户和管理员。
客户可以浏览图书信息,注册账号,修改密码,查询图书,购买图书,生成订单,对网站进行留言等。
管理员可对图书进行增删改查等维护工作,查看用户留言,管理用户留言,发布网站公告等。
关键词:
网上书店JSPMyEclipse
Abstract
WiththerapiddevelopmentofInternetinformationtechology,theInternethasbecomethemainwayforpeopletraded.Intheinformationage,buildingatime-savingshoppingenvironment,simpletobusinessmenandthebuyerisquiteatemptation,thusestablishingapowerful,simpletooperateofelectronicbusinesscontentsites,toenterprise'sdevelopmentisveryimportant.
Itisdiscussedinthispaperthedevelopment,relatedtechnologyofE-Commerceinshort,andhowtosetupaBookshopOnlineSystem,thebuilding-flow,databasesetting,functionmoduledesign,howtoimplementeveryfunctionmodulecodeconcretely.
SystemsuseMyEclipseasareceptionistdevelopmenttools;UsingMicrosoftSQLServer2005asbackenddatabasemanagementtools.UsingdevelopmentkitisJDKVersion1.6;Using6.0asaTomcatWebserver.Inaddition,thissystemusesJSP+Servlet+JavaBean(MVC)three-layerstructuremode.
ThesystemusestheB/Sstructure.Therearetwomajorparticipants:
thecustomerandadministrators.Customerscanbrowsebooksinformation,registrationnumber,modifyownpasswords,buybooks,makeorders,livemessage,etc.Administratorscanincrease,deleteandupdatebookssuchasmaintenance,viewthemessage,managethemessageandpublishsitenews,etc.
Keywords:
OnlineBookstoreJSPMyEclipse
第一章绪论
1.1项目背景
近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。
于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。
网上购物系统作为B2B,B2C(BusinesstoCustomer,即企业对消费者),C2C(CustomertoCustomer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。
本文主要考虑的是如何建设B2C的网上购物系统。
网上购物是一种具有交互功能的商业信息系统。
它向用户提供静态和动态两类信息资源。
所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。
网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。
这种全新的交易方式实现了公司间文档与资金的无纸化交换。
1.2现实价值
Internet的发展,为改变传统的商业运作模式提供了一种技术上的可行性的方案:
利用Internet的技术和协议,建立各种企业内部网Intranet,企业外部网Extranet,通过廉价的通讯手段,将买家与卖家、厂商和合作伙伴紧密结合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。
而在实际的生活中,这种方案已经被广泛的运用到了实际的商业活动中了,人们将这种交易模式称为:
电子商务。
当今比较流行的网上购物系统有“淘宝()”,“当当()”。
它们都是相当优秀的电子商务网站,对其他的网站提供了良好的典范。
设计中可以学习参考他们的思想,了解和熟悉整个网站的开发流程及完整的电子商务网站应有的功能和注意事项。
设计和完成一个电子商务网站的,将会牵涉到许多技术上的问题,如:
动态网页制作技术的,后台数据库的设计和管理,通过实际的制作个网站,可以避免纸上谈兵,在实践中掌握上述技术的使用。
1.3开发工具
本网上书店系统采用的开发工具是MyEclipse,采用Tomcat作为Web服务器,用SQLSERVER2005作为数据库,编程语言为Java,JavaScript。
显示的页面为JSP页面,另外用CSS来对页面的排版和美观。
MyEclipse[1]是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
Tomcat[1]是ApacheJakarta软件组织的一个子项目,Tomcat是一个JSP/Servlet容器,它是在SUN公司的JSWDK(JavaServerWebDevelopmentKit)基础上发展起来的一个JSP和Servlet规范的标准实现,使用Tomcat可以体验JSP和Servlet的最新规范。
经过多年的发展,Tomcat不仅是JSP和Servlet规范的标准实现,而且具备了很多商业JavaServlet容器的特性,并被一些企业用于商业用途。
SQLServer[4]是一个关系数据库管理系统,它最初是由MicrosoftSybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。
在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了。
Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本;Sybase则较专注于SQLServer在UNIX操作系统上的应用。
1.4实用技术
本系统采用的主要技术是基于服务器端的JSP、Java的组件JavaBean,以及网页编程语言HTML。
JSP[1]是JavaServerPage的缩写,是由SunMicrosystems公司倡导、许多公司参与建立一种动态网页技术标准,它在动态网页的建设中有强大而特别的功能。
JSP是一种服务器端HTML(或XML)嵌入Java代码的脚本语言,是开发Web动态网站快速而有效的工具,JSP技术的优势:
1.JSP技术是用Java语言作为脚本语言的。
Java语言是成熟的、强大的、易扩充的编程语言。
2.高效性与安全性。
JSP在执行前先被编译成字节码,字节码由Java虚拟机解释执行,比源码解释效率高。
3.可维护性。
由于JSP技术是一种开放的、跨平台的结构,因此Web服务器、平台及其他组件能很容易升级或切换,且不会影响JSP基本的应用程序。
4.稳定性。
5.产品的多样性。
目前,在国内JSP还是一种较新的技术。
但JSP+Servlet+JDBC+JavaBean目前已经成为开发电子商务平台的主流技术。
随着国内与国际的接轨,JSP必将成为网站开发技术的首选。
1.5小结
本章节对网上书店系统的项目背景,实现价值,开发工具和实用技术做了介绍,为需求分析做了铺垫。
第二章需求分析
2.1系统的功能分析
本系统包括用户和管理员。
用户在登录页面输入正确的用户名和密码即可登录网上书店的主页面,用户在主页面可以浏览书籍信息,包括图书名称,图片,价格,作者和出版社。
还可以查询图书信息,修改用户的密码,对网站进行留言。
在主页面可以将想要购买的书籍添加到购物车,在购物车中可以查看到已经添加的图书并购买,在购买时候用户可以修改购买的数量,提交订单时候需要用户输入自己的收货地址和联系电话,确认后将跳转到银行页面进行付款。
管理员登录后可以实现对书籍的增删改操作,还有留言管理和发布网站公告等。
用户的主要功能有登录,用户注册,修改密码,购买书籍,书籍查询,留言等。
如图2-1所示:
图2-1用户用例图
管理员的主要功能有登录,添加书籍,修改书籍,删除书籍,书籍查询,发布公告,留言管理等。
如图2-2所示:
图2-2管理员用例图
2.2系统的用例描述
表2-1登录用例描述
用例名称
用户登录
功能简述
用户需提供正确的用户名和密码才能进入本系统
前置条件
无
后置条件
用户登录成功
基本流
1、用户在登录页面中输入用户名和密码,并提交
2、系统判断用户名和密码是否合法
3、登录后显示主页面
扩展流
1、如果用户名或密码不合法,则返回登录页面并给出错误信息
表2-2注册用例描述
用例名称
用户注册
功能简述
用户注册自己的个人信息
前置条件
无
后置条件
用户注册成功
基本流
1、用户在注册页面中输入用户名,密码,确认密码,性别,联系电话,邮箱并提交
2、系统判断用户输入是否合法
3、注册成功后提示并跳转到登录页面
扩展流
1、如果用户输入不合法,则给出提示信息并返回注册页面
表2-3书籍查询用例描述
用例名称
书籍查询
功能简述
用户选择要查询的依据并输入查询的内容查询想要的书籍
前置条件
选择要查询的依据并输入查询内容
后置条件
显示符合查询条件的书籍信息
基本流
1、用户在查询页面中选择查询依据,输入查询内容,并提交
2、系统判断用户输入是否合法
3、查询成功后显示符合条件的书籍信息
扩展流
1、如果用户输入不合法,则给出提示信息并返回查询页面
表2-4修改密码用例描述
用例名称
修改密码
功能简述
用户可以修改自己的密码
前置条件
已登录的用户
后置条件
修改成功
基本流
1、用户在修改密码页面中输入原密码,新密码,确认新密码并提交
2、系统判断用户输入是否合法
3、修改成功后跳转到登录页面重新登录
扩展流
1、如果用户原密码不正确,则给出提示信息并返回修改密码页面
表2-5购物车用例描述
用例名称
添加到购物车
功能简述
用户将自己想要购买的书籍添加到购物车并在购物车中查看并购买
前置条件
已登录的用户
后置条件
添加成功
基本流
1、用户在主页面中浏览书籍时点击添加到购物车
2、添加成功后提示
表2-6留言用例描述
用例名称
用户留言
功能简述
用户可以留下对网站的评价
前置条件
已登录的用户
后置条件
留言成功
基本流
1、用户在留言页面中输入留言内容并提交
2、系统判断用户输入是否合法
3、留言成功后跳转到留言页面并显示用户的留言信息
扩展流
1、如果用户输入不合法,则给出提示信息并返回用户留言页面
表2-7管理员登录用例描述
用例名称
管理员登录
功能简述
管理员需提供正确的用户名和密码才能进入后台管理
前置条件
无
后置条件
登录成功
基本流
1、管理员在管理员登录页面中输入用户名和密码,并提交
2、系统判断用户名和密码是否合法
3、登录后显示管理员主页面
扩展流
1、如果用户名或密码不合法,则给出错误信息并返回管理员登录页面
表2-8添加图书用例描述
用例名称
添加图书
功能简述
管理员向书库中添加图书
前置条件
已经登录的管理员
后置条件
添加图书成功
基本流
1、管理员点击页面菜单栏中的“添加图书”链接
2、在显示的表单中填写图书名称,作者,出版社,价格
3、点击“添加”按钮
4、显示添加成功的信息
表2-9修改图书用例描述
用例名称
修改图书
功能简述
管理员修改选定的图书
前置条件
已经登录的管理员
后置条件
修改图书成功
基本流
1、管理员点击页面菜单栏中的“修改图书”链接
2、在显示的表单中填写图书名称,作者,出版社,价格
3、点击“添加”按钮
4、显示修改成功的信息,并跳转回修改图书的页面
表2-10删除图书用例描述
用例名称
删除图书
功能简述
管理员删除选定的图书
前置条件
已经登录的管理员
后置条件
删除图书成功
基本流
1、管理员点击页面菜单栏中的“删除图书”链接
2、在显示的表单中填写图书名称,作者,出版社,价格
3、点击“添加”按钮
4、显示添加成功的信息
表2-11发布公告用例描述
用例名称
发布公告
功能简述
管理员发布网站公告
前置条件
已经登录的管理员
后置条件
发布公告成功
基本流
1、管理员点击页面菜单栏中的“发布公告”链接
2、在显示的表单中填写公告内容
3、点击“发布”按钮
4、显示发布成功的信息,并返回发布页面
表2-12留言管理用例描述
用例名称
留言管理
功能简述
管理员查看用户留言,可以删除留言
前置条件
已经登录的管理员
后置条件
删除成功
基本流
1、管理员点击页面菜单栏中的“留言管理”链接
2、在显示的表单中浏览用户留言
3、点击“删除”按钮
4、显示留言删除成功的信息,并返回留言管理页面
2.3小结
本章节对网上书店系统进行需求分析,描述了系统的用例图并对各个用例进行了描述。
第三章概要设计
3.1系统总体结构设计
网上书店系统包括用户登录,用户注册,管理员登录,书籍查询,修改密码,购物车,用户留言,管理员对书籍的操作和退出系统等功能。
用户登录后可以查看图书信息,查询图书信息,将图书添加到购物车,修改密码,查看购物车,购买图书,还可以在购物车中删除图书,可以进行留言。
管理员登录后可以实现对图书的添加,修改和删除。
还可以管理用户的留言和发布公告。
系统功能模块[3]如图3-1所示:
图3-1网上书店系统功能模块图
购物车模块是一个重要模块,用户登录后在主页面浏览书籍时候可以将书籍添加到购物车,用户进入购物车可以查看到已经添加的书籍信息。
在购物车中可以对书籍进行删除操作,将添加到购物车的书籍从购物车中删除。
在购物车中点击立即购买,跳转到订单页面,在订单页面输入要购买的书籍的数量,点击提交订单,跳转到确认订单页面,确认订单页面会显示出用户购买的书籍信息包括图书名称,图片,数量和总价。
用户需要在确认订单页面输入收货地址和联系电话,点击确认订单即可。
3.2系统模块划分
网上书店系统分为用户模块和管理员模块两个大模块,这两个大模块下又包含若干子模块。
用户模块包括用户登录,用户注册,修改密码,书籍查询,查看购物车,购买书籍,用户留言等子模块。
用户注册后即可实现登录,登录后可以修改密码,查看网站的公告,查看书籍信息,并可以将书籍添加到购物车,在购物车中查看到书籍并进行购买,可以对网站进行评价留言,还可以按条件查询想要找的书籍。
管理员模块包括管理员登录,查询书籍信息,添加书籍信息,修改书籍信息,删除书籍信息,发布网站公告,留言管理等子模块。
管理员登录后进入后台管理页面,页面将显示所有书籍信息,可以对所有的书籍信息进行添加,修改,查询和删除操作。
管理员还可以查看到用户的留言并删除其留言,也可以发布网站公告。
3.3小结
本章节对系统的总体进行设计,初步描述了系统的结构,为详细设计打下了基础。
第四章数据库设计
4.1结构设计
4.1.1概念结构设计
本阶段将需求分析阶得到的用户需求和功能需求抽象为信息结构,并利用E-R图描述本数据库的概念模型,反映现实世界的实体、属性和他们之间的关系等的原始数据形式[3]。
E-R图如下:
图4-1网上书店E-R图
4.1.2逻辑结构设计
E-R图转化为关系模型[4]:
本阶段将实体和实体间的联系转换为关系模式,并确定这些实体模式的属性和码。
下面把E-R图的转换成关系模型:
用户(用户名、密码、性别、联系电话、邮箱)
说明:
此为用户实体对应的关系模型。
管理员(管理员名,密码)
说明:
此为管理员实体对应的关系模型。
订单(订单号、用户名、电话、总价、数量、图数名称,联系地址)
说明:
此为订单实体对应的关系模型。
图书(图书名称、作者、出版社、价格)
说明:
此为图书实体对应的关系模型。
留言(留言号、用户名、时间、内容)
说明:
此为留言实体对应的关系模型。
公告(公告号、管理员名、时间、内容)
说明:
此为公告实体对应的关系模型。
4.2运用设计
4.2.1数据字典设计
系统使用sqlserver2005数据库,数据库名称为bookshop,数据库中共包含7张表,分别为:
用户信息表dbo.UserInfo,包含字段UsernamePasswordSexphoneEmail
书籍信息表dbo.BookInfo,包含字段BookNamePriceAuthorPressimg
管理员信息表dbo.AdminInfo,包含字段UserNamePassword
留言信息表dbo.MessageInfo,包含字段idnamemessagedate
公告信息表dbo.News,包含字段idnamenewsdate
订单信息表dbo.Orders,包含字段idusernamebooknamequantitypriceaddressphoneimg
购物车信息表dbo.ShopCarInfo,包含字段idnamepressauthorpriceusernameimg
4.2.2数据库表
数据库中表如下所示:
表4.1订单信息表
字段名称
字段名
数据类型
长度
备注
订单号
id
INT
4
用户名
username
VARCHAR2
50
图书名称
bookname
VARCHAR2
32
数量
quantity
INT
4
价格
price
DECIMAL
18
联系地址
address
VARCHAR2
32
联系电话
phone
VARCHAR2
32
图片
img
VARCHAR2
50
表4.2留言信息表
字段名称
字段名
数据类型
长度
备注
留言号
id
INT
4
用户名
name
VARCHAR2
50
留言内容
message
VARCHAR2
50
留言时间
date
Datetime
表4.3用户信息表
字段名称
字段名
数据类型
长度
备注
用户名
Username
VARCHAR2
50
密码
Password
VARCHAR2
50
性别
Sex
VARCHAR2
50
联系电话
Phone
VARCHAR2
50
邮箱
Email
VARCHAR2
50
4.3小结
本章节进行了数据库的设计,包括结构设计和运用设计。
第五章界面设计
5.1界面统一风格
网上书店系统采用了CSS布局方式,每个页面的上方显示网上书店的图片和菜单栏,每个页面的下方显示网站的版权等信息。
在每个页面的中间由表单来显示响应的内容。
错误信息的提示方式为JavaScript。
5.2界面之间的跳转关系
图5-1页面之间跳转关系图[1]
5.3页面说明
UserLogin.jsp:
用户登录界面,包括用户名和密码,点击登录按钮,登录成功后提示并跳转到Main.jsp主页面。
Register.jsp:
用户注册页面,包括用户名、密码、确认密码、性别、联系电话和邮箱,点击注册按钮,输入正确将提示注册成功并跳转到UserLogin.jsp用户登录页面重新登录。
ModifyPassword.jsp:
密码修改页面,包括用户原密码、新密码和确认新密码,点击修改按钮,输入正确将提示修改成功跳转到UserLogin.jsp用户登录页面重新登录。
BookQuery.jsp:
书籍查询页面,包括查询条件,用户可以选择按照书名、作者或者出版社来查找,并输入查询内容,点击查询按钮,输入正确将显示查找到的书籍信息,输入不正确或者未找到书籍将给出提示。
在主页面中点击添加到购物车即可将书籍添加到购物车。
ShopCar.jsp:
购物车页面,即可查看添加的书籍信息,页面包括删除和立即购买按钮,点击删除按钮可以将书籍从购物车中移除,点击立即购买按钮将跳转到Order.jsp订单页面,包括用户要购买的书籍信息,用户可以在此页面输入要购买的数量,点击提交订单按钮跳转到UpOrder.jsp订单确认页面,该页面包括用户购买的书籍信息和总价,并要求用户输入自己的收货地址和联系电话,点击确认立即付款按钮即可跳转到Buy.jsp银行支付页面。
Message.jsp:
用户留言页面,包括用户编辑留言的文本框和所有用户的留言,输入正确后点击留言按钮即可在本页面的下方看到自己的留言。
在主页面点击退出系统将跳转到UserLogin.jsp用户登录页面。
AdminLogin.jsp:
管理员登录页面,包括管理员名和密码,点击登录按钮,输入正确的管理员名和密码即可登录到AdminMain.jsp后台管理员主页面,该页面显示所有书籍信息,菜单栏中包括添加书籍,修改书籍,删除书籍,发布公告,留言管理和退出系统。
AddBook.jsp:
添加书籍页面,包括图书名称,出版社,作者和价格。
点击添