网上书店管理系统设计与实现.doc_第1页
网上书店管理系统设计与实现.doc_第2页
网上书店管理系统设计与实现.doc_第3页
网上书店管理系统设计与实现.doc_第4页
网上书店管理系统设计与实现.doc_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

获取更多资料,收藏: 以下资料来自:零度软件团队 访问更多资料,收藏: Q 群已满,欢迎大家加入群:(257523899)获取更多计算机相关资 料。 加 Q :519396085. 摘摘 要要 随着网络技术的发展,Internet 已成为最具市场潜力的技术领域,各种 Web 应用如电子商务,网上购物等都采用这种方式实现。网上购书在国外 已经是一个比较常见的购书方式了,而在我国,网上购书才是刚刚起步, 但发展的速度却十分的惊人。通过网上书店,人们足不出户就可以选购自 己所需的图书,既省时又省力。 本系统主要实现了用户注册、登陆、查询书籍、以及通过购物车生成 订单购买书籍等一系列功能,为用户提供了迅速、便利的网上购书环境。 该系统采用 JSP、Servlet 和 JavaBean 等一些 JAVA Web 相关技术实现了一 个简单的网上书店管理系统,MVC 开发模式可以分离数据访问和数据表 现,让开发人员可以开发一个可伸缩性强的、便于扩展的控制器,来维护 整个流程。因此,系统虽小,但通用性强。 文中首先阐述了系统可行性,分析了数据库的结构和关键模型的设计, 其次详细描述了系统各个模块的功能、系统数据流图以及系统在网络中运 行的原理,最后介绍了系统主要功能和安全性的实现过程。本系统基于 Internet 网络,界面简单直观,易于操作和使用,交互性强。 关键字:关键字:网上书店;MVC;JSP;Servlet Abstract With the development of network technology,Internet has become the most potential market areas of technology. All web applications adopt this technology, such as e-commerce, online shopping and so on. In foreign countries, buying book on the net has become a comparatively common way; in our country, it is in its infancy, but the speed of development is amazing. This system mainly realizes users registration, logining, searching books, as well as generating orders to buy books by the shopping cart, and a series of other functions, so that it can provide a rapid and convenient online bookstores environment for users. By using the JSP, Servlet and JavaBean and some JAVA Web related techniques, it can build a simple online bookstore management system. MVC mode can separate the development data access from data performance, so that the developers can develop a strong scalability, quick expansion of the controller to maintain the whole process. Firstly, this paper elaborates the system market feasibility, analyzes the database structure and the design of the key model, then detailed describes the system functions of every model , system data flow diagram and system operating principle in the network. Finally the paper introduces the main functions of the system and the safety of the implementation process. This system is based on the Internet network, simple and intuitive interface, easy operation, and strong interactivity. Keywords: Online bookstore; MVC; JSP; Servlet 目目 录录 第 1 章 绪 论.1 1.1 系统开发背景 .1 1.2 国内外发展现状发展分析 .1 1.3 系统开发目的及意义 .2 第 2 章 系统相关技术介绍.3 2.1 MVC 设计模式3 2.2 基于 B/S 的 WEB 应用体系结构 3 2.2.1 三层体系结构.3 2.2.2 JSP 网站开发模式.4 2.3 JSP 中的相关技术.5 2.3.1 JSP 概述.5 2.3.2 Servlet 概述5 2.3.3 JavaBean 概述6 2.4 TOMCAT简介6 2.5 MYSQL 简介7 第 3 章 系统分析.8 3.1 可行性分析8 3.1.1 技术可行性分析.8 3.1.2 经济可行性分析.8 3.1.3 安全可行性分析.8 3.1.4 操作可行性分析.8 3.2 需求分析 .8 3.2.1 系统的主要功能.8 3.2.2 系统的实现目标.9 3.2.3 系统的性能需求.9 第 4 章 系统设计.11 4.1 功能模块划分11 4.2 系统流程 .12 4.3 系统功能简介 .14 4.4 数据库设计15 4.4.1 系统数据分析.15 4.4.2 系统数据表设计.17 第 5 章 系统实现.19 5.1 用户注册模块 .19 5.2 用户登录模块 .19 5.3 购物车功能模块设计 .20 5.4 订单功能模块设计 .21 5.5 图书管理功能模块设计 .22 5.6 管理员登录模块 .22 第 6 章 系统测试.25 6.1 测试的意义 .25 6.2 测试方法 .25 6.2.1 单元测试25 6.2.2 系统功能测试.25 6.3 测试环境 .26 6.4 测试范围与主要内容 .26 6.5 功能测试 .27 第 7 章 结论与展望.30 7.1 系统总结 .30 7.2 前景展望 .30 参考文献.31 致 谢.32 附 录.33 附录 A 源程序主要代码.33 第第 1 章章 绪绪 论论 Internet 最早在美国出现,如今世界各国纷纷加入到这个行列,使 Internet 成为全 球化的国际网络。随着用户的不断增加,其规模迅速扩大,它的领域也走向多元化。 除了原先的科学技术和教育外,Internet 已进入了文化、经济、政治、新闻、体育、娱 乐、商业和服务业。可以预见,Internet 将成为我们构筑未来崭新的生活方式。在已跨 入 21 世纪的今天,人类使用和学习信息的方式以及信息的包装方式正在进行着不可阻 挡的革命,这次革命将比印刷术的出现所产生的影响以及对社会的发展和推动远复杂 而巨大。网站的迷人之处在于综合使用文本、声音、图像、动画和视频的信息内容, 具有丰富的多媒体表现与互动特点,无可置疑,网站已成为最吸引人的也最有效的信 息传递手段和方式。 1.1 系统开发背景系统开发背景 书籍交易网站是 Internet 和电子商务发展的产物,近几年在我国发展迅猛,如同一 些书店纷纷在各地开始分店以拉近书店与客户间距离一样。21 世纪是网络的时代、信 息的时代,时间是非常宝贵的,人们由于种种原因没有时间到书店去,也不知道哪家 书店有自己需要的书籍,网上书店网站的建立可以比较好的解决这方面的问题,可以 向广大用户推出的是一种全新的网上信息服务,为书店与消费者之间架起了一座高速、 快捷的网上信息桥梁,而且目的是节约用户的时间、方便用户购书。 1.2 国内外发展现状发展分析国内外发展现状发展分析 出版物网上销售不仅是传统销售渠道的发展和补充,也是未来图书销售的发展方 向。目前我国运作和销售较好的大型网上书店,如当当、卓越和旌旗席殊、中国书网 网上书店等,这些网上书店各具优势,其中当当网上书店在价格和品种方面的优势是 无人能比;卓越网上书店创造流行的能力比较强;旌旗席殊网上书店的优势是网点多, 覆盖面广。在国外,影响较大的网上书店有美国的亚马逊,德国的贝塔斯曼和英国的 因特网书店。其中亚马逊网上书店在 1998 年拥有 450 万名顾客,到 2002 年有将近 32 亿人网上购书,销售额达到了 78 亿美元。1999 年英国的 20 亿英镑图书总销售额中, 网上销售占 5%。英国书业界人士分析,未来英国的网上售书将成为图书销售渠道中的 主要渠道。 1.3 系统开发目的及意义系统开发目的及意义 做为一个虚拟的书店,网上书店具有很多新的特性,以下这些是它的优势:其营 业成本完全有理由比传统意义上的书店低得多;不需支付昂贵的店铺租金,花费浩大 的装修;可依靠“零库存”管理,缩速资金周转的周期,可以加速周转。同时网上书 店更容易开拓全球市场。可以利用多媒体促销、各种文字、图像和动画、声音,让受 众全方位感受广告诉求;依靠客户数据库能够提供全新的个人化服务等等。这些特性 使网上书店充满生命力,也是它发展的源动力8。 网上书店系统的实现解决了人们由于没时间去书店或不知道如何找到自己想要的 图书的难题,该系统的搜索功能可以快速找到用户想要的图书,并且操作方便,节省 了大量时间;该系统对于想开书店的人来说,不仅节省了费用,而且可以随时随地的 对书店进行管理,同时 24 小时的营业模式大大的增加了收入。 第第 2 章章 系统相关技术介绍系统相关技术介绍 2.1 MVC 设计模式设计模式 MVC 模式的基本形式图如图 1 所示7。 用户 控制器 模型 视图 图 1 MVC 模式的基本形式图 MVC 是一种目前广泛流行的软件设计模块。近来,随着 J2EE 的成熟,它正在成 为 J2EE 平台上推荐的一种设计模型,也是 Java 开发者非常感兴趣的设计模型。MVC 英文即 Model-View-Controller,即把一个应用的输入、处理、输出流程按照 Model、View、Controller 的方式进行分离,这样的一个应用被分为 3 层,即模型层, 视图层,控制层。 模型就是业务流程的处理以及业务规则的确定。业务模型的设计可以说是 MVC 最 主要的核心。MVC 并没有提供模型的设计方法,而只告诉应该组织管理这些模型,以 便于模型的重构和提高重用性。 视图代表用户交互界面。随着应用的复杂性和规模性,界面的处理也变的具有挑 战性。一个应用可能有很多不同的视图,MVC 设计模式对于视图的处理仅限于视图上 数据的采集和处理。 控制可以理解为从用户接受请求,将模型和视图匹配在一起,共同完成用户的请 求。划分控制层的作用也很明显,它就是个分发器,选择什么样的模型,选择什么样 的视图,可以完成什么样的用户请求,控制层并不做任何数据处理。 2.2 基于基于 B/S 的的 WEB 应用体系结构应用体系结构 2.2.1 三层体系结构三层体系结构 三层体系结构图如图 2 所示2。 CGI,ASP,PHP 等技术的出现,使得开发动态交互式的 Web 应用得以实现。用户通 过浏览器向服务器发送请求,Web 服务器接收客户端发送来的请求,对请求进行分析, 如果请求是静态页面,那么就将所请求的页面发送到客户端;如果请求的是动态页面, 那么就执行此动态页面,并将执行结果发送给客户端。动态页面中脚本程序可以和数 据库服务器进行交互。 浏览器Web 服务 器 数据库 图 2 三层体系结构图 Web 服务器可以根据用户的请求动态更新页面上的信息,Web 信息提供者可以通 过改变数据库中的数据向用户提供最新信息,而不需要逐个更改页面。用户可以通过 这些动态页面向数据库中输入信息,从而增强了用户和服务器之间的交互性。 2.2.2 JSP 网站开发模式网站开发模式 目前,JSP 技术已经成为一种受大多数大型企业或中小型企业喜爱的动态网页开发 技术。越来越多的技术人员也逐步成为 JSP 技术的推崇者。JSP 技术正是利用了 Java 的“一次开发,处处使用”的性能,成为了网站开发技术人员的首选技术。当然,JSP 技 术的最大优势在于能够将页面的表现形式和页面的商业逻辑分开9。 JSP 网站开发技术标准提供了两种开发模式:一种是 JSP+JavaBean 开发模式;一 种是 JSP+Servlet+JavaBean 开发模式。 JSP+JavaBean 模型图如图 3 所示。 浏 览 器 JSP JavaBean DataBase 图 3 JSP+JavaBean 模型图 在这种模型中,JSP 页面独自响应请求并将处理结果返回给客户,所有的数据通过 JavaBean 来处理,JSP 实现页面的显示。此模型常常会导致页面被嵌入大量的脚本语 言或者 Java 代码段,当处理大型业务时,页面程序将变得异常复杂给开发和维护带来 困难。 JSP+Servlet+JavaBean 模型图如图 4 所示5。 浏 览 器 Servlet JSP JavaBean DateBase 图 4 JSP+Servlet+JavaBean 模型图 Servlet 技术是一种采用 Java 技术来实现 CGI 功能的一种技术。Servlet 是运行在 Web 服务器上,用来生成 Web 页面。Servlet 技术非常适于服务器端的处理和编程。 在此种开发模式中,JSP 技术用来显示页面,该页面中没有任何的商业处理逻辑, 通过 Servlet 技术来完成大量的事物处理工作。Servlet 用来处理事务的请求,充当着一 个控制者的角色,并负责向客户发送请求,创建 JSP 需要的 Bean 和对象,根据用户的 请求行为,决定将哪个 JSP 页面发送给用户。 从上面两种开发模式来说:第二种模式要好些,更适合于团队开发,速度相对较 慢,但是可维护性高。 2.3 JSP 中的相关技术中的相关技术 2.3.1 JSP 概述概述 JSP 即 Java Server Pages,是由 Sun Microsystem 公司于 1996 年 6 月推出的新技术, 是基于 Java Servlet 以及整个 Java 体系的 Web 开发技术。JSP 已经成为开发 Web 动态 网页重要、快速和有效的工具,是全新的网络服务器编程环境。JSP 充分利用了 Java 的强大功能,是一种优秀的服务器端技术。随着 Java 技术的日益成熟和流行,JSP 在 网络编程中也变得越来越重要。JSP 基于强大的 Java 语言,具有极强的扩展能力,良 好的缩收性,以及与平台无关的开发特性,成为构建动态网站的主流技术之一,JSP 有 着其他技术所不具备的优势。其优势在于:可以将内容的生成和显示进行分离、生成 可重用的组件、采用标识简化页面开发。JSP 能提供所有 Servlet 的功能。 2.3.2 Servlet 概述概述 Servlet 是 Java 编写的服务器端程序,是由服务器端执行和调用的 Java 类。Servlet 是采用 Java 技术来实现 CGI 功能的一种技术,能够像 CGI 一样动态地扩展 Web 服务 器的功能,并采用请求响应模式提供 Web 服务。Servlet 和 CGI 一样都是运行在 Web 服务器上,用来生成 Web 页面。Servlet 的主要功能在于交互式地浏览和修改数据, 生成动态 Web 内容。其工作流程图如图 5 所示6。 Servlet 工作流程: (1)客户端发送请求信息至服务器。 (2)服务器将请求信息发送至 Servlet。 (3)Servlet 生成响应内容并将其传给 Servlet。响应内容动态生成,通常取决于客 户端的请求。 (4)服务器将响应信息返回至客户端。 Web client Web server DateBase HTTP Servlet request HTTP Servlet response Web component 图 5 Servlet 工作流程图 2.3.3 JavaBean 概述概述 JavaBean 是 Sun 公司为了进入因特网、企业网以及万维网上进行分布式计算的组 件结构入口。按照 Sun 公司的定义,JavaBean 是一个可重复使用的软件部件。 JavaBean 体系结构是第一个全面地基于组件的标准模型之一,该组件是 Java 类,这些 类遵循一个接口格式,以便于使方法命名、底层行为以及继承或实现的行为能够把类 看做标准的 JavaBean 组件的方式进行构造8。 在 Java 模型中,通过 JavaBean 可以无限扩充 Java 程序的功能,通过 JavaBean 的 组合可以快速生成新的应用程序。JavaBean 具有以下特点: (1)易维护性、易使用性、易编写性。 (2)可以在 Java 的任何平台上进行工作,并且不需要重新编译。 (3)可以在内部网或者网络之间进行传输。 (4)可以以其它部件的模式进行工作。 JavaBean 在 JSP 程序中常用来封装事务逻辑、数据库操作等,可以很好的实现业 务逻辑和前台程序的分离,使得系统具有更好的健壮性和灵活性。 2.4 Tomcat 简介简介 如今,基于 Web 的应用越来越多,传统的 Html 已经满足不了如今的需求。因此 需要一个交互式的 Web,于是便诞生了各种 Web 语言。如 Asp,Jsp,Php 等。当然,这 些语言与传统的语言有着密切的联系,如 Php 基于 C 和 C+语言,Jsp 基于 Java 语言。 Tomcat 即是一个 Jsp 和 Servlet 的运行平台。 Tomcat 是一个免费的开源的 Serlvet 容器,是 Apache 基金会的 Jakarta 项目中的一 个核心项目,由 Apache,Sun 和其它一些公司及个人共同开发而成。 2.5 MySQL 简介简介 MySQL 是一个小型关系型数据库管理系统,开发者为瑞典 MySQL AB 公司。在 2008 年 1 月 16 号被 Sun 公司收购。而 2009 年,Sun 又被 Oracle 收购。MySQL 是一 种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放 在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL 的 SQL“结构化查询语 言”。SQL 是用于访问数据库的最常用标准化语言。MySQL 软件采用了 GPL(GNU 通 用公共许可证) 。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点, 许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。 第第 3 章章 系统分析系统分析 3.1 可行性分析可行性分析 可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计过程,也就是 在较高的层次上以抽象的方式进行的系统分析和设计过程10。 3.1.1 技术可行性技术可行性分析分析 技术上的可行性分析主要是分析技术条件能否顺利完成开发工作,硬、软件能否 满足开发者的需要等。在软件方面,本系统采用的是 JSP(Java Sever Pages)进行开发, 数据库系统采用的是 MySql。通过分析,在软、硬件方面现有工具与环境完全可以实 现系统的开发,因此具有技术上的可行性。 3.1.2 经济可行性经济可行性分析分析 经济可行性主要是对项目的经济效益进行评价。本系统对系统开发者来说并不需 要太高的成本支出,只是对系统的管理者付出管理报酬即可,而且开发周期不需要太 长,节省了人力、物力、财力资源,所以本系统在经济上是可行的。 3.1.3 安全可行性分析安全可行性分析 在系统运行后,就用户方而言,由于用户使用本系统时不会也不必关心系统内部 的结构及实现方法,即对用户来说是透明的,所以本系统对用户而言是定位在界面友 好、操作方便、功能齐全的原则上的,用户只需简单的用鼠标点击各页面上的链接或 按钮就能执行相应的功能。就管理者而言,关心的是如何处理用户信息,只要把用户 的信息放入服务器端的数据库或专门的数据库服务器,管理者就可运行相应的后台程 序进行处理。 3.1.4 操作可行性操作可行性分析分析 本网上书店管理系统的操作简单,而且界面友好,系统的操作流程是管理者和用 户所熟悉的。并且本书店管理系统能够实现其各个功能,在当前操作环境下也能很好 的运行。 综上所述,不管是从技术上考虑,还是从经济上考虑,这个系统都具备一定的可 行性,因此我才开发研究这个系统供广大用户使用。 3.2 需求分析需求分析 3.2.1 系统的主要功能系统的主要功能 根据该书店的具体情况,系统主要功能设计有两大部分,分别为前台管理、后台 管理。 (1)前台管理:主要是用户购买图书的管理。包括首页、选购图书、查看订单、 查看物品、确认订单消息、提交订单、个人信息的修改。 (2)后台管理:主要是对书店后台对图书及会员的管理。包括商品的分类,特价商品的 管理,订单管理,系统用户管理,安全退出。 3.2.2 系统的实现目标系统的实现目标 随着我国图书业的全面开放,电子商务的迅速发展,网上书店还存在巨大的发展 空间,该网上书店管理系统在实施后应能够达到以下目标: (1)利用多媒体等技术,尽可能为读者提供如图书、目录、精彩章节等详细介绍。 并及时更新相关信息。 (2)提供特色服务,开展特色化经营。这不仅包括服务内容的特色化,还包括服 务方式的多样化。不仅既满足了读者的现实需求,又挖掘、引导了读者的潜在需求。 (3)采用流行的 B/S 方式,响应速度快,安全性高,扩充方便。 (4)解决同姓名消费者的个人资料不被泄露与盗用的问题。 (5)系统维护方便可靠,具有灵活性、通用性的特点。 3.2.3 系统的性能需求系统的性能需求 (1)系统的安全性 系统运行安全是决定软件质量的重要因素,系统中涉及多方信息,有订单信息、 用户信息、图书信息等等,如果有人蓄意破坏任意信息,都可能会导致系统的停用, 会带来损失,因此仍然需要保证它的安全。为了保证系统的安全性,必须采取一定的 安全措施,防止工作数据被非法篡改、破坏和泄露等。既要考虑操作系统的安全性, 还要考虑到书店系统本身的安全性。 (2)系统的合理性 在设计系统时要考虑实际的系统性能和硬件要求,不能忽视所处环境,也不能一 味地追求新技术,要保证系统的合理性。 (3)系统的简单性、易用性 要考虑到不同层次用户和管理员的计算机操作水平,一般而言,大部分人的计算 机操作水平偏低,因此开发时要本着“简单易用”的原则,方便各层次人员的使用。对 于购买图书的用户只需要简单且快捷地选购方式,既利于他们使用,也提高购买速度, 同样对于后台管理人员,也需求简单、一目了然的界面,这样即使是没有操作过计算 机的人来说,只需要进行简单的操作培训就可以达到熟练,使之能顺利地完成系统各 种功能。 (4)系统的稳定性、可靠性 由于网上书店系统在购买图书时有一系列连续的操作,因此,该系统必须具有高 度的稳定性,保证在购买时不出故障,即使出现故障,系统也必须具有快速恢复能力。 第第 4 章章 系统设计系统设计 4.1 功能模块划分功能模块划分 用户访问的前台模块时可以实现的逻辑操作有:首页,查看订单,查看物品,确 认订单消息,提交订单,个人信息的修改3。 前台模块功能结构如图 6 所示。 个人网上书店管理前台 修改注 册资料 购物车 管理 顾客留 言 首页订单管 理 查 看 物 品 确 认 订 单 信 息 订 单 提 交 成 功 查 看 订 单 个 人 信 息 修 改 图 6 个人网上图书管理前台功能结构图 管理员访问的后台模块时可以实现的逻辑操作有:商品的分类,特价商品的管理, 订单管理,系统用户管理,安全退出。 后台模块功能结构如图 7 所示。 个人网上书店管理后台 图书 分类 管理 特价 图书 管理 订单 管理 系统 用户 管理 安全 退出 图 7 个人网上书店管理后台功能结构图 4.2 系统流程系统流程 管理员登录程序流程图的简要叙述:首先,管理员在登录界面中输入管理员用户 名和密码,并向系统发送。系统在收到发送信息后查询数据库,如果在数据库中存有 相同的信息,则运行管理员界面。如果在数据库中没有相同信息,则系统提示错误, 并返回登录界面。管理员登录模块流程图如图 8 所示: 开始 输入用户名与密码 查询数据库 是否有这条 记录? 进入管理员界面 提示用户名 或密码错误 结束 图 8 管理员登录模块流程图 用户登录程序流程图的简要叙述:首先,用户在登录界面中输入用户名和密码, 并向系统发送。系统在收到发送信息后查询数据库,如果在数据库中存有相同的信息, 则运行管理员界面。如果在数据库中没有相同信息,则系统提示错误,并返回登录界 面。 用户登录模块流程如图 9: 图 9 用户登录模块流程图 网上书店主要实现网上购书的整个流程,用户进入书店,先注册登录成为书店的 合法用户才能购买图书,填写用户相关资料,注册成功后,则用户就可以登录书店网 站(只有成功登录的用户才能在书店上进行购买功能);用户可以通过网上的图书查询或 图书展示,查找相关图书,当点击图书时就可以浏览图书的详细信息;如果是找到想 要购买的图书时,登录用户就可以通过购物车功能,把想购买的图书先放进购物车中, 然后可以选择结账或者继续购买图书;当用户找到全部想要购买的图书后,可以对购 买的图书进行数量上的修改,这样可以大量购买同一本书,而节省时间,当所有都确 定后,用户可以点击结账按钮,进行结账服务;结账时,系统会再一次要求用户填写 资料,确保能把购买图书送到顾客那里,并生成订单。流程如图:10 所示。 用户购物流程:选购-加入购物车-下订单-支付-发货-完成。 开始 输入用户名与密码 查询数据库 是否有这条 记录? 进入网上书店首页 提示用户名 或密码错误 结束 服务器端 显示 用户注册 添加订单 结账 查看购物车 添加购物车 查找图书 登录修改用户信息 清空购物车 修改数量 退回指定图书 图 10 用户购物流程图 4.3 系统功能简介系统功能简介 对于网上书店,首先要能给用户最大的便捷,这种便捷不仅体现在网络之外的物 流、图书的折扣等,更要体现用户在进行网络操作时的易用性,能够模拟用户的购书 行为,营造一种尽量真实、贴切的用户购书过程。所以,在设计网络书店时,最重要 的就是完成“用户功能” 。其次,对众多图书、订单等信息的网络管理,对于网站经营 者的经营效率的意义,也是不言而喻的,这些可以统称为“管理功能” 。于是,网站可 以简单的划分为两大模块:“用户功能”模块和“管理功能”模块。 1用户界面部分 (1)用户注册:为了统一管理,网上书店规定只有合法用户才能购买图书,所以 要想购买图书的新用户必须进行注册。 (2)用户登录:判断用户是否为合法用户,只有合法用户才能购买图书。 (3)修改个人信息:更改跟人资料,随时可以更新用户的其他信息,方便联系。 (4)查看图书详细情况:查看图书的详细资料,这样方便用户判断是否购买这本 图书购买后有没有帮助。 (5)购物车功能:为用户暂时保存购买的图书信息。 (6)查看用户的订单信息:查看用户购买了什么图书。 2管理界面部分 (1)图书管理:添加、修改、删除。 (2)用户管理:查看、修改、删除。 (3)订单管理:查看订单信息、更新订单付款、出货状态。 (4)分类管理:修改、删除商品的分类。 4.4 数据库设计数据库设计 4.4.1 系统数据分析系统数据分析 在仔细调查书店管理过程的基础上,总结出该系统需要满足以下系统数据的需求。 系统用户:id,登录名,登录密码,姓名,联系方式,会员等级。 图书:id,容量,书名,出版社,出版日期,价格,类别,封面图。 系统管理员:id,登录名,登录密码。 订单:id,订单号,订单日期,会员,订单状态。 顾客留言:id,会员,题目,内容,留言日期。 网上书店总体 E-R 图1如下: 图书 管理员用户 日期 会员等级 ID 联系方式 登录名 姓名 密码登录名 出版社 书名 密码ID 数量 类别 价格 ID 管理 购买 管理 1 1n n m n N 图 11 网上书店 E-R 图 网上书店管理系统各实体属性图如下: 用户 会员等级 登录名 登陆密码 姓名 联系方式 ID 图 12 用户实体属性图 ID 订单日期 订单号 订单状态 会员 订单 图 13 订单属性图 图书 数量 类别 价格 出版日期 出版社 书名 ID 图 14 图书实体属性图 管理员 登陆密码 ID 登陆名 图 15 管理员属性图 顾客留言 ID 留言日期 内容 题目会员 图 16 顾客留言实体属性图 4.4.2 系统数据表设计系统数据表设计 网上书店数据库中主要表的设计结果如图 17 至 21 所示。每个表格对应数据库中 的每一张。 图 17 member 表 图 18 order 表 图 19 merchandise 表 图 20 admin 表 图 21 leavaword 表 第第 5 章章 系统系统实现实现 5.1 用户注册模块用户注册模块 为了统一管理,网上书店规定只有合法用户才能买书,所以要想购买本图书的新 用户必须先注册,以便能及时发货给用户,并随时联系用户,系统必须详细记录每一 个用户的信息。用户注册模块就是完成这一功能。该模块需要设计一个表达让用户输 入有关个人的详细信息。用户注册界面如图 22。 图 22 用户注册界面图 5.2 用户登录模块用户登录模块 如果用户想在该网站购买图书,必须先进行登录,才可进行下面的操作。为了检 验用户是否为书店的合法用户,所以需要用户输入用户名和密码来核对用户的合法性。 用户登录模块就是完成这一功能。用户登录界面如图 23。 图 23 用户登录界面图 5.3 购物车功能模块设计购物车功能模块设计 购物车模块是网上书店系统的重要组成部分,购物车功能指的是应用于网上 书店的在线购买功能,它类似于超市购物时使用的推车或篮子,用户可以暂时把挑选 图书放入购物车,可以对选定的商品进行删除或更改购买数量,并对多个商品进行一 次结款,是网上商店里的一种快捷购物工具。购物车界面如图 24。 图 24 购物车界面图 模块主要代码: public boolean addCart(Member member, Merchandise mer, int number) throws Exception Session session = MySessionFactory.getSession(); Transaction tx = null; boolean status = false; Cartselectedmer sel = null; int favourable = member.getMemberlevel().getFavourable().intValue(); /判断该会员是否已经有使用中的购物车 String hql =“from Cart as a where a.member=:member and a.cartStatus=0“; Query query = session.createQuery(hql); query.setEntity(“member“, member); query.setMaxResults(1); tx = session.beginTransaction(); Cart cart = (Cart)query.uniqueResult(); if (cart=null) cart = new Cart(); cart.setCartStatus(new Integer(0); cart.setMember(member); cart.setMoney(Double.valueOf(number*mer.getPrice().doubleValue(); cart.getMerchandises().add(mer); session.save(cart); System.out.println(total*mer.getPrice().doubleValue()*favourable/100); 5.4 订单功能模块设计订单功能模块设计 用户可以查看自己的订单信息,方便用户购买,其中在用户下订单的时候,会生 成一个订单编号和订单账号,此功能的作用是便于用户识别、管理员管理订单。订单 功能界面如图 25。 图 25 订单管理界面图 5.5 图书管理功能模块设计图书管理功能模块设计 图书后台管理模块是整个图书系统最重要和复杂的部分,该模块主要实现对图书 信息,系统用户的管理,其包括四个管理员,分别有不同的权限,可对图书和用户进 行管理,包括显示所有图书的信息、添加图书信息、修改图书信息、删除图书信息, 更改用户等功能。后台管理界面如图 26。 图 26 发表日志界面图 5.6 管理员登录模块管理员登录模块 为了检验用户是否为管理员,需要用户输入用户名和密码来核对。管理员登陆模 块就是要完成这一功能。当管理员登陆书就会登陆到后台管理系统,不会在前台。管 理员登陆界面如图 27。 图 27 管理员登陆界面图 模块主要代码: public Admin adminLogin(String loginName, String loginPwd) throws Exception Session session = MySessionFactory.getSession(); Admin admin = null; try String hql = “select a from Admin as a where a.loginName=:loginName and a.loginPwd=:loginPwd“; Query query = session.createQuery(hql); tx = session.beginTransaction(); admin = (Admin)query.uniqueResult(); catch(Exception ex) if(tx!=null)tx.rollback(); (“在执行 AdminServiceImpl 类中的 adminLogin 方法时出错:n“); ex.printStackTrace(); finally MySessionFactory.closeSession(); return admin; 第第 6 章章 系统测试系统测试 6.1 测试的意义测试的意义 系统测试是系统开发周期中的一个非常重要环节。尽管在系统开发周期的各个阶 段均采取了严格的技术审查,但依然难免会留下错误,如果系统的一些漏洞或错误在 投入运行之前的系统检测阶段没有发现并纠正,这些问题在运行阶段是迟早会暴露出 来的,到那时要纠正错误将会付出更大的代价。系统测试占用的时间、花费的人力和 成本占软件开发的很大比例。统计表明,开发较大规模的系统,系统测试的工作量大 约占整个软件开发工作量的4050。而对于一些特别重要的大系统,测试的工作 量和成本更大,甚至超过系统开发其他各阶段的总和的若干倍。 6.2 测试方法测试方法 6.2.1 单元测试单元测试 对于小系统,在编码过程中,最常用的单位测试。单元测试是在软件开发过程中 要进行的最低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序的其 他部分相隔离的情况下进行测试。 单元测试不仅仅是作为无错编码一种辅助手段在一 次性的开发过程中使用,单元测试必须是可重复的,无论是在软件修改,或是移植到 新的运行环境的过程中。因此,所有的测试都必须在整个软件系统的生命周期中进行 维护。 6.2.2 系统功能测试系统功能测试 系统功能测试最常见的两种方法是黑盒测试和白盒测试,黑盒测试也称功能测试, 将软件看作黑盒子,在完全不考虑程序的内部结构和特性的情况下,研究软件的外部 特性。根据软件的需求规格说明书测试用例,从程序的输入和输出特性上测试是否满 足设定的功能。白盒测试也称结构测试,将软件看作一个透明的白盒子,按照程序的 内部结构和处理逻辑来选定测试用例,对软件的逻辑路径及过程进行测试,检查与测 试是否相符。 (1)链接测试 链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不 知道地址的页面的主要手段。链接测试可分为三个方面。首先,测试所有链接是否按 指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后, 保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有 知道正确的URL地址才能访问。 (2) 表单测试 当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、 登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给 服务器的信息的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如: 只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。 (3) 数据库测试 在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运行、 查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型 是关系型数据库,可以使用SQL对信息进行处理。 在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数 据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而 造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况, 可分别进行测试。 6.3 测试环境测试环境 硬件环境如下: CPU:Inter(R) Core Duo CPU T7250 2.00Hz 内存:1.00GB DDR 硬盘:120G 显卡:NVIDIA Quadro NVS 135M 输入设备:键盘、鼠标 软件环境如下: 操作系统:Windows XP 数据库软件:MySQL 5.1 运行软件:Eclipse+MyEclipse8.5 6.4 测试范围与主要内容测试范围与主要内容 (1)注册功能操作测试,主要内容:测试数据库的完整性及连接。 (2)系统登陆验证,验证用户身份,主要内容:用户登录权限的控制。 (3)购物车功能测试,主要内容:测试系统实用性、可用性。 (4)图书管理功能测试,主要内容:测试系统实用性、可用性。 6.5 功能测试功能测试 各模块功能测试如下: (1)用户注册模块测试如表 1: 表 1 注册模块测试 路径输入预计输出实际结果 在登陆界面 点击注册按 钮进行用户 注册 填写用户相 关信息 注册成功注册成功 在登陆界面 点击注册按 钮进行用户 注册 填写已注册 过的用户名 注册失败注册失败 注册成功提示信息如图 28 图 28 注册成功提示信息 注册失败提示信息如图 29 图 29 注册失败提示信息 (2)登录模块测试如表 2: 表 2 登录模块测试 路径输入预计输出实际结果 在用户登录 界面进行登 录 输入正确的用 户名与密码, 如 kongl,123456 登录成功登录成功 在用户登录 界面进行登 录 输入错误的用 户名与密码, 如 kongl,231312 登录失败登录失败 用户登陆成功如图 30 图 30 用户登陆成功 用户登录失败如图 31 图 31 用户登录失败提示 (3)购物车功能测试如表 3: 表 3 购物车测试 路径输入预计输出实际结果 点击购买按 钮后,进行 购物车的操 作 查看购物车物 品,确认订单 信息,提交订 单 成功购买图 书 成功购买图 书 点击购买按 钮后,进行 购物车的操 作 填写订单信息 时少填一项, 如:收货地址 提示要填写 完整信息 提示要填写 完整信息 购物车测试成功如图 32 图 32 购物车选购成功 购物车测试失败如图 33 图 33 购物车测试失败提示 (4)图书管理功能模块测试如表 4: 表 4 图书管理测试 路径输入预计输出实际结果 管理员登陆 后,进入后 台管理界面 对图书分类 添加删除的 管理,对用 户的管理 可以成功的 进行各类管 理 可以成功的进 行各类管理 管理员登陆 后,进入后 台管理界面 对不属于该 管理员权限 的内容进行 管理 没有权限无 法进行管理 没有权限无法 进行管理 管理功能如图 34 图 34 后台的管理功能 管理员无权限提示如图 35 图 35 管理员无权限 第第 7 章章 结论与展望结论与展望 7.1 系统总结系统总结 在系统的设计开发过程中,注重了科学的软件思路。首先在总统设计上,采用了 模块化和分层的设计思想,使整个系统流程清晰、逻辑合理,为系统的实现创造了良 好的条件。作为一个简单的通用网上书店系统,具备的功能还不够完善,有很多可以 拓展的地方。在实际中,可以根据企业的具体要求进行发展 在详细设计和编码中,运用JSP最基本的开发技术,代码简单易懂,系统里间跳转 比较清晰。完成了普通用户和系统管理员两者的功能分离,而且各自的功能操作都能 得到正确数据并存入数据库中保存。但是,通过这次设计我意识到将旧知识和新知识 结合的必要性,学会了如何思考和解决问题的方法。在今后的学习和工作当中,我会 再接再厉,做出更好的软件系统。 7.2 前景展望前景展望 系统的开发以及论文的研究由于时间的关系,有一些地方做的还不是很完美。对 MVC 设计模式的研究时间不长,所以在写代码的时候还没有做到真正的得心应手,是 在查询一些帮助文档的情况下才完成的。网上购物车是所有网上书店的核心部分,现 在大部分程序员采用两层 B/S 结构实现,能进一步的保护数据库的安全性,缩短客户 访问网站的时间,技术上也保证了网站的经济效益。 由于本系统仅具有网上书店的基本功能,因此还有很多需要完善的地方,总结有 如下几点: (1) 网上订单的安全性:客户从网上正式提交定金后,就不能否认自己提交过 订单,这可以采用数字签名的技术来实现。 (2) 网上支付的安全性:由于该系统目前没有和银行的网上支付业务真正取得 联系,所以本系统并没有实现网上支付。如果要实现网上支付,可以对客户信息的加 密来保证信息的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论