1、网上商城系统摘 要伴随着计算机技术日益广泛和深入的应用,网络的概念早已深入人心,网络在各行各业中发展中占据了重要位置。商品的买卖已经不再局限于普通的商店,网上商店已经成为商家展示自己舞台的另一舞台,也为商家带来了更高的利益。本论文研究的内容就是网上商城的具体功能及实现。实现了商品查询、商品管理、商品显示、购物车、订单管理、用户管理等功能。基本上实现了网上商城功能和购物流程,能够完成网上商品的交易。其开发主要包括:数据库的建立,前台Web页面设计,后台管理。本系统采用Oracle数据库和Tomcat 6.0 服务器实现。关键词:网上商城、JSP、Oracle数据库Online shopping
2、systemAbstractFollow the technology of the computer in the enterprise and deep application dayby day, the concept internet has been deeply taken up peoples heart, the internet takesan very important part in the development of all trades and professions. The trade of goods has not only limited in nor
3、mal shop, the internet has became another stage which company can display themselves, it also bring more yield for company.The contents of this paper studies are online shopping systems function and realizes. Has realized the goods query, the goods management, the goods display, the shopping cart, t
4、he order management, the users management and so on. Basically has realized online shopping function and shopping flow, can realize the commodity exchange on the internet. Its developments mainly include database setting-up, web design of the foreground pages and back-stage management. The system re
5、alized by Oracle database and Tomcat 6.0 Web server.Key word: Online shop, JSP, Oracle database目录摘 要1Abstract2目录31. 绪 论51.1 开发背景51.2 开发目的和意义51.3 网上商城简介52. 软件开发环境72.1 JSP简介72.2 JavaBean技术简介82.3 Servlet技术简介92.4 Oracle数据库简介102.5 MyEclipse 简介102.6 Tomcat 服务器介绍112.7 开发环境的配置132.7.1 JDK的安装与配置132.7.2 Tomcat
6、的安装142.7.3 数据库后台环境配置153. 网上商城系统需求分析163.1 需求分析163.2 可行性分析173.2.1 技术可行性分析173.2.2 运行可行性分析173.2.3 经济可行性分析173.3运行环境184. 网上商城系统总体设计194.1 系统的功能模块194.1.1 系统前台194.1.2 系统后台194.2 数据库设计204.2.1 数据库系统概述204.2.2总体结构E-R图204.2.3 数据库表设计214.3 数据流程分析224.4 主要业务流程分析234.4.1 用户注册234.4.2 用户登录244.4.3 网上购物255.网上商城系统详细设计265.1 系
7、统主要文件265.1.1 com.frl.model包265.1.2com.frl.servlet包265.1.3前台系统275.1.4后台系统275.2详细功能设计及实现275.2.1 用户注册模块275.2.2 用户登录模块285.2.3 商品显示模块305.2.4 购物车模块315.2.5 生成订单模块345.2.6 订单模块345.2.7 管理员登录模块365.2.8 添加商品模块375.2.9 用户管理模块385.2.10 订单管理模块386 系统测试406.1 软件测试的方法和步骤406.2 测试及评价41总 结42参考文献43致 谢44外文原文45中文翻译52附录561. 绪 论
8、1.1 开发背景随着计算机技术的高速发展,计算机网络应用的普及,人们的生活水平不断的提升,传统的购物方式已经不能满足人们对购物的需求,加上商家对低成本商品销售的期望,网上商城应运而生。二十一世纪是个网络化,信息化得社会,网络的快速发展,信息传递的速度加快,使人们足不出户就可以得到信息。越来越多的人希望可以不用进入拥挤的市场就可以购买到自己喜爱的商品,各商家也希望已最低的价格出售更多的商品。所以网络商城出现了,它避免了人们为了购买到物美价廉的商品到处奔波的辛苦,也为商家节省了店面费,各种代理费,物流费等等。1.2 开发目的和意义本系统设计是为了满足人们通过互联网就可以足不出户的查看购买到自己喜爱
9、的商品。改变传统的交易模式,通过互联网完成商品的交易,提高购买效率,方便消费者的同时减轻商家工作负担,同时对商品交易信息进行管理,便于分析,掌控物品的销售。本设计主要涉及程序编程、数据库设计、网络等技术,涵盖诸多知识点,可以有效提高对所学知识综合运用能力和对问题分析解决能力,正确的设计思想,独立思考,勇于进取,探索创新,为今后进一步学习与工作奠定了良好的基础。1.3 网上商城简介网上商城类似于现实世界当中的商店,差别是利用电子商务的各种手段,达成从买到卖的过程的虚拟商店,网上商城为个人用户和企业用户提供人性化的全方位服务,为用户创造亲切、轻松和愉悦的购物环境,不断丰富产品结构,最大化地满足消费
10、者日趋多样的购物需求,并凭借更具竞争力的价格和逐渐完善的物流配送体系等各项优势,赢得市场占有率多年稳居行业首位的骄人成绩,也是时代发展的趋势。网上商城比传统商城具有更多优点:1.成本低廉:由于省去了店面费用,总体的成本降低很多,所以表现在消费品上的价格也会相对传统店面便宜很多,价格优势比较明显。2.永不关门:每天24小时,每周7天。都可以进行商品的浏览与购买,工作时间可以随时与客服进行交流,解决购物中遇到的困难。3.客户无限:全球的任何人都可以通过Internet访问您的商店,不受空间限制。4.环保交易:书写电子化,传递数据化。采用无纸贸易。更加环保。5.无库存压力:商品可以在消费者下单后直接
11、联系厂家,从厂家发货。 2. 软件开发环境2.1 JSP简介JSP是Sun公司推出的新一代站点开发语言,他完全解决了目前ASP,PHP的一个通病既脚本级执行(据说PHP4也已经在Zend的支持下,实现编译运行).Sun公司借助自己在Java上的不凡造诣,将Java从Java应用程序和JavaApplet之外,又有新的硕果,就是JspJavaServerPage。Jsp可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。JSP具有如下方面的技术特点: 1.将内容的生成和显示进行分离 使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使
12、用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。 在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。 2.强调可重用的组件 绝大多数JS
13、P页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。 3.采用标识简化页面开发 Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索
14、组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。 通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。 JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。 由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为JavaSer
15、vlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。 作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。 4.JSP几乎可以运行于所有平台。如WinNT,Linux,Unix.NT下IIS通过一个插件,例如JRUN或者ServletExec,就能支持JSP。著名的Web服务器Apache已经能够支持JSP。由于Apache广泛应用在NT、Unix和Linux上,因此JSP有更广泛的运行平台。虽然现在NT操作系统占了
16、很大的市场份额,但是在服务器方面Unix的优势仍然很大,而新崛起的Linux更是来势不小。从一个平台移植到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java字节码都是标准的与平台无关的。 JSP代码被编译成Servlet并由Java虚拟机解释执行,这种编译操作仅在对JSP页面的第一次请求时发生。在JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只依赖于Web服务器,而JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。JSP是面向Web服务器的技术,客户端浏览
17、器不需要任何附加的软件支持。 2.2 JavaBean技术简介JavaBean是用于封装某种业务逻辑或对象的Java类,此类具有特定的功能,即它是一个可重用 的Java软件组件模型。由于这些组件模型都具有特定的功能,将其进行合理的组织后,可以快速生成一个全新的程序,实现代码的重用。JavaBean的功 能是没有任何限制的,对于任何可以使用Java代码实现的部分或需求的对象,都可以使用JavaBean进行封装,如创建一个实体对象、数据库操作、字符 串操作等。它对简单或复杂的功能都可以进行实现。JavaBean可分为两类,即可视化的JavaBean与非可视化的JavaBean。可视化的JavaBe
18、an是一种传统的应用方式,主要用于 实现一些可视化界面,如一个窗体、按钮、文本框等。非可视化的JavaBean主要用于实现一些业务逻辑或封装一些业务对象,并不存在可视化的界面。此种 方式的应用比较多,在JSP编程之中被大量采用。将JavaBean应用到JSP编程中,使JSP的发展进入了一个崭新的阶段。它将HTML网页代码与Java代码相分离,使其业务逻辑变得更加清晰。2.3 Servlet技术简介Servlet是使用Java Servlet 应用程序设计接口(API)及相关类和方法的 Java 程序。除了 Java Servlet API,Servlet 还可以使用用以扩展和添加到 API 的
19、 Java 类软件包。Servlet 在启用 Java 的 Web 服务器上或应用服务器上运行并扩展了该服务器的能力。Java servlet对于Web服务器就好象Java applet对于Web浏览器。Servlet装入Web服务器并在Web服务器内执行,而applet装入Web浏览器并在Web浏览器内执行。 Java Servlet API 定义了一个servlet 和Java使能的服务器之间的一个标准接口,这使得Servlets具有跨服务器平台的特性。Servlet 通过创建一个框架来扩展服务器的能力,以提供在 Web 上进行请求和响应服务。当客户机发送请求至服务器时,服务器可以将请求信
20、息发送给 Servlet,并让 Servlet 建立起服务器返回给客户机的响应。 当启动 Web 服务器或客户机第一次请求服务时,可以自动装入 Servlet。装入后, Servlet 继续运行直到其它客户机发出请求。Servlet 的功能涉及范围很广。例如,Servlet 可完成如下功能:1.创建并返回一个包含基于客户请求性质的动态内容的完整的 HTML页面。2.创建可嵌入到现有 HTML 页面中的一部分 HTML 页面(HTML 片段)。3.与其它服务器资源(包括数据库和基于 Java 的应用程序)进行通信。4.用多个客户机处理连接,接收多个客户机的输入,并将结果广播到多个客户机上。例如,
21、Servlet 可以是多参与者的游戏服务器。5.当允许在单连接方式下传送数据的情况下,在浏览器上打开服务器至applet的新连接,并将该连接保持在打开状态。当允许客户机和服务器简单、高效地执行会话的情况下,applet也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或标准 (如 IIOP)进行通信。6.对特殊的处理采用 MIME 类型过滤数据,例如图像转换和服务器端包括(SSI)。7.将定制的处理提供给所有服务器的标准例行程序。例如,Servlet 可以修改如何认证用户。2.4 Oracle数据库简介Oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够
22、处理大批量的数据,在网络方面也用的非常多。Oracle简称甲骨文,是仅次于微软公司的世界第二大软件公司,该公司名称就叫Oracle。该公司成立于1979年,是加利福尼亚州的第一家在世界上推出以关系型数据管理系统(RDBMS)为中心的一家软件公司。 Oracle不仅在全球最先推出了RDBMS,并且事实上掌握着这个市场的大部分份额。现在,他们的RDBMS被广泛应用于各种操作环境:Windows NT、基于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台。事实上,Oracle已经成为世界上最大的RDBMS供应商,并且是世界上最主要的信息处理软件供应商。由于Oracle公司的RDBMS都
23、以Oracle为名,所以,在某种程度上Oracle己经成为了RDBMS的代名词。Oracle数据库特点:1.Oracle7.X以来引入了共享SQL和多线索服务器体系结构。这减少了ORACLE的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。2.提供了基于角色(ROLE)分工的安全保密管理。在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。3. 支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。4. 提供了与第三代高级语言的接口软件PRO*系列,能在C,C+等主语言中嵌入SQL语句及过
24、程化(PL/SQL)语句,对数据库中的数据进行操纵。加上它有许多优秀的前台开发工具如 POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速开发生成基于客户端PC 平台的应用程序,并具有良好的移植性。 5. 提供了新的分布式数据库能力。可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。Oracle也许是最流行的服务器,占有最大的市场份额,它被广泛用于各个市场领域,满足一系列的存储需求。Oracle数据库优点:可用性强,可扩展性强 ,数据安全性强 ,稳定性强。2.5 MyEclipse 简介MyEclipse,是一个十分优秀的用于开发Java, J2EE的E
25、clipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类
26、: 1. JavaEE模型 2. WEB开发工具 3. EJB开发工具 4. 应用程序服务器的连接器 5. JavaEE项目部署服务 6. 数据库服务 7. MyEclipse整合帮助 对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以
27、后版本安装时不需安装Eclipse。2.6 Tomcat 服务器介绍Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商
28、的认可,成为目前比较流行的Web 应用服务器。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何 一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat
29、 时,它实际上作为一个与Apache 独立的进程单独运行的。 当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和 JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目 中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与
30、和支持,最新的Servlet和Jsp规范总能在 Tomcat中得到体现。在Tomcat中,应用程序的部署很简单,只需将WAR放到Tomcat的 webapp目录下,Tomcat会自动检测到这个文件,并将其解压。在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将 Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密 码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,你可以在远程通过Web部署和撤销应用。当然本地也可以。Tomcat不仅仅是一个Servlet容器,它也具
31、有传统的Web服务器的功能:处理 Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache.我们可以将Tomcat和Apache集成到一块,让 Apache处理静态Html,而Tomcat处理Jsp和Servlet.这种集成只需要修改一下Apache和Tomcat的配置文件即可。基于Tomcat的开发其实主要是Jsp和Servlet的开发,开发Jsp和 Servlet非常简单,你可以用普通的文本编辑器或者IDE,然后将其打包成WAR即可。我们这里要提到另外一个工具Ant,Ant也是Jakarta 中的一个子项目,它所实现的功能类似于Unix中的make.你需要写一个b
32、uild.xml文件,然后运行Ant就可以完成xml文件中定义的工作,这 个工具对于一个大的应用来说非常好,我们只需在xml中写很少的东西就可以将其编译并打包成WAR.事实上,在很多应用服务器的发布中都包含了Ant.另 外,在Jsp1.2中,可以利用标签库实现Java代码与Html文件的分离,使Jsp的维护更方便。2.7 开发环境的配置2.7.1 JDK的安装与配置1.在SUN的官方网站上下载JDK,然后安装。2.进行JDK的环境变量的配置:第一步:右击“我的电脑”,点击“属性”:第二步:选择“高级”选项卡,点击“环境变量”:第三步:在“系统变量”中,设置3项属性,JAVA_HOME,PATH
33、,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”:第四步:JAVA_HOME设为JDK的安装路径(如C:Program FilesJavajdk1.6.0_10),此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依靠此变量);图2-1 JAVA_HOME的变量值Path使得系统可以在任何路径下识别java命令,设为:%JAVA_HOME%bin;%JAVA_HOME%jrebin CLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设
34、为:.;%JAVA_HOME%lib; %JAVA_HOME%就是引用前面指定的JAVA_HOME图2-2 classpath的变量值第五步:“开始”“运行”,键入“cmd”:第六步:键入命令“java -version”,出现JDK的版本信息,说明环境变量配置成功。图2-3 jdk的版本信息2.7.2 Tomcat的安装下载并安装tomcat6.0。进入 bin目录,双击tomcat6w.bat执行文件后点Start启动Tomcat服务器,打开浏览器,键入http:/localhost:8080进入Tomcat服务器的主页面。如果出现如图2-4 界面则表示安装成功。图2-4 Tomcat 欢
35、迎界面2.7.3 数据库后台环境配置在Oracle中文网站3. 网上商城系统需求分析3.1 需求分析 系统的实际应用性很明显,电子商务发展非常迅速,人们追求的是简捷、方便、省时,通过Internet选购商品,不必花费太多的时间去逛商场,坐在电脑前就可以买到称心的商品,符合人们的心愿。关键是在具备基本功能的基础上要保证操作简单以及界面美观,并要使顾客很快适应这个系统同时还需要考虑交易的安全性。其基本功能是,用户能够通过该系统浏览商品信息,以及进行购物,而管理员要能对网站做必要的管理,因此必须要有针对与用户和管理员的前台用户操作功能和后台管理员操作功能。其中前台操作主要是用户进行操作,包括:1.
36、用户登录及注册当用户要购买商品必须登录,而后由系统验证登录信息是否正确,转到登录后的界面,否则继续转到登录界面,如果是新用户,则需要先注册,注册时应该填写用户名、密码、地址、邮编等信息方便以后的购物操作,注册成功后,可以用注册的用户名进行登录。2. 查看商品信息用户应能查看所有商品的信息,包括商品名称,价格,详细介绍,图片等。也可以按商品名称、价格、类别等查询特定商品的信息。3. 购物车功能用户对于要购买的商品可以添加到购物车中,并能更新每中商品的数量。购物车应该能够记录所有的添加进来的商品的单价,数量,并计算出总价钱,方便用户操作。要使用户能够随时查看当前购物车中的商品信息,对于放弃购买的商
37、品要能从购物车中删除,并从总价格中减去该商品的价钱。同时应该具有清空购物车的功能。4. 用户下订单用户已经决定购买物品并且提交了购物车,则系统应该能够将当前购物车中的商品信息,结合用户的注册信息,当前的系统时间,生成订单,生成订单号。然后用户可以查看自己的订单,查看订单中订购的东西,价格等。后台操作主要是由管理员对网站进行管理,包括:1. 商品管理管理员可以查看系统中的所有图书.可以添加图书资料并且删除某一图书资料。2. 订单管理管理员可以查看所有订单信息,并且可以根据具体情况更新订单的付款和发货状态。3. 用户管理管理用户:管理员可以查看所有用户的资料,删除用户。 3.2 可行性分析3.2.
38、1 技术可行性分析网上购物服务系统的开发是一项复杂的系统工程。为了保证系统开发成功,必须采用工程化的系统开发方法,并研究出一些符合工程化标准的开发方法。这些方法旨在指导开发者进行工程化的系统开发,从而加快系统开发的速度,保证质量以及降低开发成本。工程化的系统开发方法确实在开发实践中取得了一定的效果。此次开发使用JSP作为开发语言,采用Servlet技术,Tomcat6.0作为Web服务器。3.2.2 运行可行性分析 随着计算机知识的普及和推广,越来越多的人掌握了计算机的基本使用方法和技能。随着Internet的发展,用户对于网络、WINDOWS等环境下的软件使用比较熟悉,对于新鲜事物,用户表现
39、出极大的兴趣和热情。网上商城界面界面友好,操作简单容易学习。 3.2.3 经济可行性分析网上购物服务系统给人们带来了方便,成为一种全新的商务模式。因此,不用出门就可以在家购物的新时尚已经到来,构建一个网上购物服务系统在经济上是完全可行的。就本系统而言,随着电脑的普及,为消费者在网络上进行购物提供有利的条件。而一个网上购物服务系统可以为消费者提供软件条件,这样消费者便可以足不出户的买商品了。商家可以从中获得利润,两全其美。通过以上的分析,开发网上购物服务系统是完全可行的。3.3运行环境 本系统采用联网多机多用户操作方式,系统的运行环境包括硬件、操作系统、关系数据库等软件:硬件:中央处理器(CPU
40、):奔4 以上的处理器;硬 盘:80 M以上硬盘;内 存:256 MB显示器: 17寸显示器操作系统: Windows XP 关系数据库:Oracle 10g4. 网上商城系统总体设计4.1 系统的功能模块4.1.1 系统前台1用户注册:登录本系统前得注册为本系统会员,填写真实相关信息,包括:真实姓名,家庭住址,电子邮件,邮编等,方便购买商品后邮寄。系统检测输入的合法性。2用户登录:注册为会员后可登录系统进行购买相关操作,系统检查登录输入与数据库信息是否一致,判断是否登录成功。3商品查询:用户可在搜索栏中输入商品名称,类别等进行搜索查询自己想要的商品信息。4商品浏览:用户进入系统后可以分页浏览
41、商品以及商品详细信息,选中商品可添加至购物车中。5. 购物车:购物车保存用户选中的商品,显示用户购买商品的名称,单价,数量以及总价等信息。用户可对购物车中商品修改购买数量,删除某个商品或清空购物车。6. 生成订单:系统判断用户是否登录,没有登录跳转到登录界面,登录成功进入完成订单模块,核对用户信息可进行修改,无误可生成订单。7.公告新闻:发布系统各种信息,活动等。4.1.2 系统后台1.商品管理:管理员登录系统,可对商品进行管理:添加新的商品,修改商品信息,或者删除商品。2.用户管理:管理员对用户进行管理:添加用户,删除用户,修改用户信息。3.订单管理:管理员可以对订单进行查看,删除等操作。4
42、.管理员管理:添加新的管理员,修改个人信息。4.2 数据库设计4.2.1 数据库系统概述数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率,以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。数据库系统是在文件系统的基础上发展而来的,经历了层次数据库、网状数据库、关系数据库三个阶段。由于关系数据库采用人们比较容易理解和接受的二维表格来组织数据,发展迅速,已成为数据库产品的主流。本系统的前端开发是使用JSP技术,通过Servlet进行逻辑控制和数据库连接,而后台数据库采用的是Oracle数据库。对比其他的大型数据库管理系
43、统,Oracle数据库具有可靠的安全性,较快的存储速度,高度的兼容性。应用Oracle作为后台数据库为系统的开发提供了强有力的支持,并对以后软件的运行提供了坚实的基础,因此,我们采用了Oracle作为后台数据库。4.2.2总体结构E-R图图4-1实体关系E-R图4.2.3 数据库表设计本系统的数据库其中包括5个表,分别为管理员表admin, 商品信息表goods 订单表orders, 订单细节表orderdetail用户信息表userinfo,。详情请见下面的数据库表:1. 管理员表:如图 4-2图 4-2 管理员表 2. 商品信息表:如图4-3图 4-3 商品信息表 3. 订单表:如图4-4
44、图4-4 订单表4. 订单细节表:如图4-5图4-5 订单细节表5. 用户信息表:如图4-6图4-6 用户信息表4.3 数据流程分析本文中所涉及的数据流图是描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况。其各个符号意义说明如下: 图 4-7 图 4-8 图4-9 图4-10图4-7 表示数据的源点或终点,即指外部实体。图4-8 表示数据存储。图 4-9 表示数据处理。图 4-10表示数据流,即特定数据的流动方向。1. 网上商城系统顶层图:网上商城系统对管理员和用户的各种操作进行响应。图 4-11 系统顶层图2. 用户登陆注册模块数据流图,管理用户的登陆、登
45、出、注册的模块,用户登陆时,由该模块负责查询数据库中的用户文件,验证用户身份,用户注册时,由该模块将注册信息写入用户文件。图4-12 登录注册模块数据流图3. 购物管理模块,当用户提出各种购物请求后,由该模块响应,负责从商品文件中读取响应的内容,反馈给用户。图 4-13 购物管理模块数据流图4. 商品管理模块数据流图,当管理员提出对商品管理的请求后,由该模块负责对商品文件的读取,插入,修改,并把相关信息显示给管理员。图4-14 商品管理模块数据流图5. 用户管理模块数据流图,主要是由管理员提交用户管理请求后,由用户管理模块通过读取或修改数据库中的用户文件,并将操作结果返回管理员。图 4-15 用户管理模块数据流图6. 订单管理模块,是由管理员提出查询订单的请求,由该模块负责查询用户订单文件中的信息,并把相关信息显示给管理员。图 4-16 订单管理模块数据流图4.4 主要业务流程分析4.4.1 用户注册 用户注册流程图如4-17所示:图4-17 用户注册流程图4.4.2 用户登录 用户登录流程如图4-18所示图4-18用户登录流程图4.4.3 网上购物图4-19 网上购物流程图5.网上商城系统详细设计5.1 系统主要文件