网络购物系统的设计与实现毕业论文 - 图文

更新时间:2024-06-12 02:18:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

本科生毕业论文(设计)

题目: 乐淘购物系统的设计与实现

学院 / 系 专 业

年 级 学 号 作者姓名 指导教师

2011年12月20日

1

本科生毕业论文(设计)

摘 要

本次毕业论文题目为乐淘购物系统的设计与实现。随着信息化时代的到来,网上购物以其便捷,快速,安全的优势逐渐步入了我们的生活。人们对于互联网的要求已不单单是浏览下网页,收发电子邮件,日益忙碌的人们开始追求足不出户的利用互联网这一强大的平台来实现网上购物。近几年,随着网络数据库技术的进步发展,使得这一设想逐渐成为现实。

本系统由两个大模块组成:前台用户界面的实现,后台管理员对乐淘购物系统的管理。前台用户界面主要是对本站所有商品的信息的展示,所以将内容细分为:游客及会员对商品的浏览,会员对商品的购买,购物生成订单,订单结算等模块。而后台主要是管理员对网站的支持和维护体现在三个模块:用户管理模块,商品管理模块,订单管理模块。在各个模块里都有相对应该的对其内容的新增,删除,修改,查询操作。由于各模块的相互独立又相互关联性使本系统较能适应目前市场需求。

根据系统所需功能,决定以J2EE为开发平台,采用Oracle做后台数据库,选择功能强大的Eclipse为开发工具,利用软件工程思想和方法,总体上用结构化生命周期法进行系统分析和设计,采用快速原型法来实现,系统本系统界面友好,而且操作更加简单,减少了用户学习操作的额外负担。

该系统使用了功能强大的Java Web开发技术,前台页面使用JSP。同时系统使用了基于MVC机制的Struts技术,添加了Hibernate 组件。作为Web应用的一个比较成熟的开发模式——MVC模式把应用程序抽象为Mode(模型)、View(视图)、Controller(控制器)三个功能截然不同的部分,三者对于整个系统是相对独立的工作,但各部分之间又紧密联系,共同完成系统的各项功能。使操作方便,可维护性强。经过大量的测试,基本符合用户需求。

关键字:乐淘购物网,Java,Struts,MVC,hibernate,Css,Html

Abstract

The thesis topic for happy shopping system design and implementation. With the advent of the information age, online shopping with its convenient, fast, secure advantages gradually entered our life. The Internet has not only under the webpage browsing, email, increasingly busy people began to pursue the use of the Internet remain within doors of this powerful platform to realize online shopping. In recent years, with the development of network database technology, making this vision is becoming reality.

The system consists of two modules: the user interface implementation, background

1

本科生毕业论文(设计)

administrator for happy shopping management system. The user interface is mainly for all the commodities information display, so the content is divided into: visitors and members to browse merchandise, members of the purchase of goods, shopping order, order settlement module. While the background is the administrator of the site support and maintenance is embodied in three modules: the user management module, management module of goods, order management module. In each module are relative to its content should be the new, delete, modify, query operation. Because each module of the independent and interrelated nature of this system is to adapt to the current market demand. According to the required function, decided to take J2EE as the development platform, using Oracle database to do the background, select the powerful Eclipse as development tool, using the software engineering ideas and methods, generally using structured life cycle method for system analysis and design, using rapid prototyping system to realize, the system interface is friendly, and the operation is more simple user operation, reduces the additional burden of learning.

The system uses the powerful Java Web development technology, front page using JSP. At the same time the system using Struts technology based on MVC mechanism, add a Hibernate component. As Web application a relatively mature development model -- MVC mode application Abstract Mode ( model ), View ( view), Controller ( controller ) three different functional parts, three for the whole system is relatively independent of the work, but the portion between closely linked together, the system of the function. The operation is convenient, the maintainability is strong. After extensive testing, basically meet the needs of users.

Keywords: Happy Shopping , Java, Struts, MVC, Hibernate, CSS, HTML

2

本科生毕业论文(设计)

目 录

1 绪论 ................................................................. 1

1.1 项目背景 ....................................................... 1 1.2 研究意义 ....................................................... 1 1.3 相关领域介绍 ................................................... 1 1.4 本系统概述 ..................................................... 1 2 乐淘系统分析 ......................................................... 2

2.1 系统需求分析 .................................. 错误!未定义书签。

3

本科生毕业论文(设计)

2.1.1 功能需求 ................................................... 3 2.1.2 性能需求 ................................................... 3 2.2 系统可行性分析 ................................................. 4 2.2.1 技术及开发方法可行性 ....................................... 4 2.2.2 管理可行性 ................................................. 4 2.2.3 经济可行性 ................................................. 4 2.3 业务流程分析 ................................................... 4 3乐淘网设计 ........................................................... 6

3.1 系统物理环境配置 ............................................... 6 3.2 项目规划 ....................................................... 7 3.3 系统概要设计 ................................................... 8 3.4 数据库设计 .................................................... 10 3.4.1 概念设计 .................................................. 10 3.4.2 逻辑设计 .................................................. 12 3.4.3 物理设计 .................................................. 12 3.5 系统详细设计 .................................................. 14 3.5.1 用户模块设计 .............................................. 14 3.5.2 管理员模块设计 ............................................ 16

4乐淘网的实现 ........................................................ 20

4.1 系统技术实现 .................................................. 20 4.1.1 JSP简介 .................................................. 20 4.1.2 B/S 结构概述 .............................................. 20 4.1.3 Struts 框架简介 ........................................... 20 4.1.4 Oracle简介 ............................................... 21 4.2 系统首页实现 .................................................. 21 4.3 会员注册模块实现 .............................. 错误!未定义书签。 4.4 会员登录模块实现 .............................. 错误!未定义书签。 4.4.1 会员登陆 .................................................. 23 4.4.2 会员密码找回 .............................. 错误!未定义书签。

4

本科生毕业论文(设计)

4.4.3 会员密码修改 .............................. 错误!未定义书签。 4.4.4 生成订单 .................................. 错误!未定义书签。 4.5 管理员模块的实现 .............................................. 27 4.5.1 管理员登录 ................................................ 27 4.5.2 所有商品查询功能 .......................................... 28 4.5.3 添加商品功能 .............................. 错误!未定义书签。 4.5.4 修改商品信息功能 .......................... 错误!未定义书签。 4.5.5 查询所有订单功能 .......................................... 30

5 系统测试 ............................................................ 30

5.1 系统测试方法 .................................................. 30 5.1.1 系统测试计划 .............................................. 30 5.1.2 系统测试工具 .............................................. 30 5.1.3 系统测试方法和测试类型 .................................... 30 5.2 系统测试的目的和原则 .......................................... 31 5.3 系统测试 ...................................................... 31 5.3.1 系统登录测试要点 .......................................... 31 5.3.2 商品购买测试要点 .......................................... 31 5.3.3 操作权限测试要点 .......................................... 32 5.3.4 数据输入测试要点 .......................................... 32 5.3.5 数据删除测试要点 .......................................... 32 5.4 数据测试效果 .................................................. 32 6 结 论 ............................................................... 34

6.1 系统开发总结 .................................................. 34 6.2 存在问题及改进 ................................................ 35 致 谢 ................................................................. 36 参考文献 .............................................. 错误!未定义书签。

5

本科生毕业论文(设计)

6

本科生毕业论文(设计)

1 绪论

1.1 项目背景

电子商务作为一种新的商业模式,被认为是新知识经济时代和经济一体化趋势的产物,并且随着Internet技术的迅猛发展和Web的日益流行,它的应用也越来越广泛。尽管目前在国内这项技术的硬件基础设施和信息安全技术还不成熟,但可以预见,作为电子商务主要内容之一的网上购物,将成为未来人们主要购物方式之一。

本文首先比较了目前最流行的几种Web应用程序的开发性能,JSP因其良好的跨平台性和安全性,尤其适合应用于开发大型商务网站。

[1]

1.2 研究意义

21世纪是一个以网络为核心的信息时代,数字化、网络化以信息化是21世纪的时代特征。电子商务作为信息时代的一种新的商贸形式,不仅对商务的运作过程和方法产生巨大的影响,实际上也带来了一场革命,其影响将远远超出商务的本身,将对社会的生成和管理,人们的生活和就业、政府职能、法律制度以及文化从多方面改变人类的观念、思维和相互交往的方式。

1.3 相关领域介绍

在我国,网上购物从无到有也不过短短今年时间。我国第一家网上购物发生在1996年,燕莎友谊商场首次通过网上商城售出一个景泰蓝。虽然货款的支付不是在网上进行的,但这毕竟为我国零售业奏出了网上购物的先声。根据CNNIC的统计结果,截止2004年1月中国互联网用户7950万人,而又有40.7%以上的网民在过去一年里有过网购经历,这就说明中国有过网上购物的用户达到3235.7万人,并且这一数字还在以17%的速度增长,预计到2006年中国网上购物用户将达到6962万人,这说明在中国发展在中国发展网上购物具有良好的群众基础,网上购物方式日趋被大家所接受。

[2]

1.4 本系统概述

乐淘购物网是开放式系统,其核心思想是提供一个以商品展示为主的界面,向用户和游客展示本网站的所有商品,并实现商品的订购,将极大满足了不远出户的用户需求。本课题的开发工

1

本科生毕业论文(设计)

具可以使用Eclipse,开发语言可以是JSP /Java等开发语言,后台数据库可采用Oracle数据库。

大乐淘吧购物网系统主要由前台用户登录系统,后台管理员管理系统两个部分组成。本课题主要功能详解如下:

用户登录系统:各类商品展示模块,选择商品后的订购模块,商品结算模块。 管理员管理系统:主要功能有用户管理模块,商品管理模块,订单管理模块等。

2 乐淘购物网系统分析

2.1 系统需求分析

系统分析方法来源于系统科学。系统科学是20世纪40年代以后迅速发展起来的一个横跨各

2

本科生毕业论文(设计)

个学科的新的科学部门,它从系统的着眼点或角度去考察和研究整个客观世界,为人类认识和改造世界提供了科学的理论和方法。它的产生和发展标志着人类的科学思维由主要以“实物为中心”逐渐过渡到以“系统为中心”,是科学思维的一个划时代突破。

系统分析是咨询研究的最基本的方法,我们可以把一个复杂的咨询项目看成为系统工程,通过系统目标分析、系统要素分析、系统环境分析、系统资源分析和系统管理分析,可以准确地诊断问题,深刻地揭示问题起因,有效地提出解决方案和满足客户的需求。

[3]

2.1.1 功能需求

具体功能描述如下。 1.一般用户/会员

(1)系统遵循开放模式,注册用户可以按照自己的需要查看商品和选购商品;未注册用户也可以任意查看,但在生成订单时要求正式登陆系统。

(2)商品信息主要包括商品编号、商品名称、商品介绍、商品价格。 (3)商品按类别展示。 (4)用户可查看订单。 2.管理员

(1)管理员拥有最大权限,可以进入管理页面并配置系统信息。 (2)管理员可以查询会员。

(3)管理员可以随时更新产品信息,上传新产品,以及删除产品。 (4)管理员查看订单状态,对订单进行删除。

2.1.2 性能需求

可以分为以下几种。

1.安全性要求:所有访问数据库的操作,必须尽量保证安全。 2.美观性要求:要求界面美观,操作简便。

3

本科生毕业论文(设计)

2.2 系统可行性分析

2.2.1 技术及开发方法可行性

本系统基于浏览器/服务器体系人们常说的 B/S体系,系统安装维护简便。数据集中管理,便于分散用户使用,适应互连时代软件的发展趋势。开发技术主要包括JSP, Java, JavaBean, JDBC以及Web应用开发中常用的脚本语言JavaScript。Web服务器采用Tomcat,数据库采用Oracle数据库系统。由于本系统采用的是Java相关的技术具有“一处编译处处运行”的特性,所以系统可跨平台使用,可运行于Linux/Unix和Windows系列操作系统平台。

[4]

2.2.2 管理可行性

利用面向对象的机构化方法,面向对象方法以“对象”为中心,在分析对象、研究对象及对象的属性的过程中,根据其内在规律建立求解模型。

基于这种方法建立的软件系统,不管外部环境或功能需求如何地变化,其对象的内在的规律是不变的,区别于传统方法的以“过程为中心”,以功能分解为基本方法,当功能需求发生变化时,将引起对软件整体结构的修改,导致系统不稳定。因而,基于这种方法建立的软件系统是不会引起软件结构的整体变化,所以系统是稳定的,利用此方法可以充分达到系统管理可行性的目的。

[5]

2.2.3 经济可行性

通过调查分析开发游戏网站所具备的能力及实现的方法,准确确定游戏网站的总体结构,利用Oracle数据库所具有的能力,以最简洁最容易的方法,使用JSP和Java使其达到快速开发的效果。

当今世界正发生着巨大变化,管理信息系统的环境,目标,功能,内涵均随着时间的推移不断发生着变化。从环境上看,世界己变成“市场全球化,需求多元化,竞争激烈化,战略短期化”。一切事物的变化都在加快,企业不得不更加重视变化管理和战略管理。从目标上看,企业要在激烈的竞争中立于不败之地,首先产品和服务要适应市场的需要,其次企业要有效率。

[6]

2.3 业务流程分析

业务流程分析可以帮助我们了解某项业务的具体处理过程,发现和处理系统调查工作中的错

4

本科生毕业论文(设计)

误和疏漏,修改和删除原系统的不合理部分,促成在新系统基础上有话业务处理流程。

业务流程分析的目的是:形成合理、科学的业务流程。通过分析现有业务流程的基础上进行业务流程重组(BPR),产生新更为合理的业务流程。业务流程分析主要是定义项目的内容,即对现行的管理进行仔细地回顾和描述,从而认识项目的业务和技术上的具体要求,帮助确定流程工作与合作建模的基本要素,更好地分析理解其同其他要素的关系,例如业务目标、业务策略、面对的问题、产生的影响、组织机构参与者或者相关的企业架构。

系统设计以前,要对系统需求进行归纳和分析,查找出所有的业务主角,然后在确定业务主角后,每个主角的相关活动及流程应清晰地制定出来,最终设计出逻辑视图、用户界面示意图。

下面是对该系统业务流程的简单分析:

任何游客都可以对首页的商品进行浏览,但不可购买商品。只有会员有购买的权限,如果游客不是会员则需要进行注册。注册后,在登录时用户名与密码验证通过就能做相关操作。如果用户名不存在或密码不正确,则提示重新登录。如果用户忘记密码,则可以点击忘记密码之后回答相关问题进行找回密码。密码找回后也可进行修改。

用户成功登录之后,进入主页面,可随便购买商品。

如果当前登录用户为管理员,则可以管理商品信息,查看所有商品信息,对商品进行添加,修改和删除。管理用户信息,查询所有用户的信息,无权对用户信息进行修改和删除。管理订单信息,查询所有订单,可以对订单进行删除。

系统业务流程图如图2-1所示。

登录失败重新登录

查看浏览商品 用户 游客 首页浏览 用户 管理员登录 订单 商品 查询

[7]

查查询, 询 添加, 5 修改。

本科生毕业论文(设计)

购买 用户登录 未注册 注册失败重新注已注册 用户注册 登录 成 功 成功 商品浏览和 购买 生成订单 安全退出 图2-1 系统业务流程

3 乐淘购物网设计

3.1 系统物理环境配置

系统硬件平台的配置: 1.CPU:P7350 2.00GHz。 2.内存:500M。

6

密码不附重新登录

本科生毕业论文(设计)

3.硬盘:30GB。

4.基本的输入、输出设备。 系统软件平台的配置:

如果说硬件是一个系统的身体,那么软件则是一个系统的灵魂,一个系统设计的好坏,不仅要有正确的软件开发思想,也应该有良好的软件开发工具,乐淘电子商务系统所采用的软件配置环境为:

1.操作系统:Windows XP Professional Edit Service Pack2。 2.数据库软件:Oracle。 3.系统开发软件:Java + JSP。

[8]

3.2 项目规划

本系统的结构包括数据存储层、商务服务器组件及应用服务层。在应用服务层中主要采用Struts技术来构建动态网页来支持整个面向服务对象的应用。

整个电子商务系统的网站设计是整个消费客户进行交互的页面,服务对象通过访问网站来获得所需要的信息,该网站的设计提供以下功能:

1.各种功能的连接。包括注册,登录,浏览和订购。 2.各种商品的分类展示、商品的详细信息。 3.各种以往订单纪录的查询。

3.3 系统概要设计

根据系统分析的结果数据流程图所描述的系统的逻辑模型,把数据流程图上各个处理模块进一步分解,确定系统的层次结构关系,把逻辑模型变为物理模型。

在管理信息系统的设计过程中,系统划分的一般原则如下:

1.子系统要具有独立性。即应把相对独立的事务处理过程作为一个子系统。这样的子系统具有较高的内聚性,与其它的藕合较弱,便于软件开发、使用及日后系统维护。

7

本科生毕业论文(设计)

2.子系统的划分结果应使数据冗余度较小。应避免部分数据在多个子系统中出现,尤其是修改,以保证系统的安全性、可靠性和数据的一致性。

3.子系统的划分应能满足目前和日后管理上的需要,功能应齐全,操作要方便且为今后发展留有接口。

4.子系统的划分应以该单位的管理职能为依据。应尽量避免过分依赖于组织机构,以防止机构变更后为系统带来不必要的麻烦。

从公司的组织结构上出发,把整个管理信息系统划分成多个子系统。每个子系统的功能相对独立,但是子系统之间有必要的数据联系。

对电子商务系统的数据流图采用变换中心法和事务中心法进行分析,对其逐步进行功能分解,直到分解成为含义明确、功能单一的单元功能模块,从而得到系统的功能模块结构图,即系统的功能图。

系统能模块结构图反映了电子购物商城的系统功能模块的划分,如图3-1所示。

游客

浏浏管生核览览理成对 8 商商用订订 品 户 品 单 单

快乐淘吧网上购物系统 会员 管理员 管理商品 管理订 单

本科生毕业论文(设计)

图3-1 系统功能模块结构图

1.游客模块功能描述

注意:游客没有购买商品的权限。 (1)商品展台模块:

商品分类浏览、商品详细信息。 2.用户模块功能描述 (1)商品展台模块:

商品分类浏览、商品详细信息。 (3)用户模块:

注册新用户、登录、用户修改密码、用户找回密码。 (4)订单模块: 查询个人订单列表。 3.管理模块功能描述

(1)用户管理:登录;查询用户。

(2)商品管理:添加、修改、删除商品信息。 (3)订单管理:查看订单。

3.4 数据库设计

3.4.1 概念设计

概念结构设计是将分析得到的用户需求抽象为信息结构(即概念模型)的过程,它是整个数据库设计的关键。概念结构的主要特点是:

1.能真实、充分地反映现实世界。

9

本科生毕业论文(设计)

2.易于理解。

3.易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。 4.易于向关系、网状、层次等各种数据模型转换。

概念结构是各种数据模型共同基础,它比数据模型更独立于机器、抽象,更加稳定。为了把用户的数据要求清晰明确的表达出来,通常要建立一种面向问题的数据模型,按照用户的观点来对数据和信息建模。最常用的概念性数据模型就是E-R模型。

管理员属性图如图3-2所示。 管理员账户 管理员信息 图 3-2 管理员信息实体属性图

用户属性图如图3-3所示。

会员姓名 会员密码 会员年龄 会员职业 管理员姓名 管理员密码 [9]

会员名称 用户信息

10

本科生毕业论文(设计)

图 3-3 用户信息实体属性图

大类别编号 商品信息 图 3-5 小类别商品信息实体属性图 订单属性图如图3-6所示。 订货地址 会员姓名 联系电话 商品信息 商品属性图如图3-4,3-5所示。 大类别名称 大类别信息 图 3-4 大类别商品信息实体属性图 商品名称 大类别编号 小类别编号 商品介绍 商品价格 会员名称 订货编号 运货方式 11

本科生毕业论文(设计)

图 3-6 小类别商品信息实体属性图

3.4.2 逻辑设计

数据库逻辑设计分为三个阶段,分别是:用户要求、建立E-R 模型和数据库模式设计。 数据库逻辑设计中的第一阶段收集和分析用户需求是按以下四步进行的:分析用户活动,确定系统范围,分析用户活动所涉及的数据和分析系统数据。逻辑设计第二阶段建立E-R 模型分两步,首先应进行局部E-R 模型设计,然后进行总体E-R 模型的设计。逻辑设计第三阶段在数据库模式设计阶段分两步进行,第一步初步设计,把E-R 图转换为关系模型,第二步优化设计,对模式进行调整和改善。

我们所要进行研究的是逻辑设计的第三步即将E-R图像关系模型转化。下面把实体及实体间关系转换成为关系模型。实体转换出的关系模式:

用户信息表{会员名称,会员密码,真实姓名,会员年龄,会员职业} 管理员信息表{管理员账户,管理员密码,管理员名称} 大类别商品信息表{大类别编号,大类别名称}

小类别商品信息信息表{大类别编号,小类别编号,商品名称,商品价格,商品介绍} 订单信息表{订货编号,会员名称,会员真实姓名,订货地址,联系电话,运送方式}

3.4.3 物理设计

数据库物理设计包括:选择存储结构、确定存取方法、选择存取路径、确定数据的存放位置。 主要解决选择文件存储结构和确定文件存取方法的问题。在数据库中访问数据的路径主要表现为如何建立索引。如要直接定位到所要查找的记录,应采用索引方法存取方法(索引表)。顺序表只能从起点进去向后一个个访问记录。在上面的实体以及实体之间关系模式的基础上,形成数据库中表以及各表之间关系。

在数据库中,索引就是表中数据和相应存储位置的列表。使用索引可以大大的减少数据查询的时间。但需要注意的是索引虽然能加速查询的速度,但是为数据库中的每张表都设置大量的索引并不是一个明智的做法。应根据系统的具体情况创建索引。

12

本科生毕业论文(设计)

用户信息表如表3-1所示。

表3-1 用户信息表

字段名 name password reallyname

age procession

说 明 会员名称 会员密码 真实姓名 会员年龄 会员职业

类 型 varchar2 varchar2 varchar2 int varchar2

长 度 50 50 10 50

可否为空 否 否 否 否 否

主键 是 否 否 否 否

大类别商品信息表如表3-2所示。

表3-2 大类别商品信息表

字段名 bigId bigName 说 明 类 型 大类别编号 number 大类别名称 varchar2 长 度 4 50 可否为空 否 否 主键 是 否 小类别商品信息表如表3-3所示。

表3-3小类别商品信息表

字段名 bigId smallId goodname introduce price

说 明

类 型

长 度 4 4 50 200 4

可否为空 否 否 否 否 否

主键 是 否 否 否 否

大类别编号 number 小类别编号 number 商品名称 varchar2 商品介绍 varchar2 商品价格 number

管理员信息表如表3-4所示。

表3-4 管理员信息表

字段名 account password name 说 明 类 型 管理员账户 varchar2 管理员密码 varchar2 管理员名称 varchar2 长 度 100 99 4000 可否为空 否 否 否 主键 是 否 否 订单信息表如表3-5所示。

表3-5 订单信息表

字段名 orderno name reallyname 说 明 订货编号 会员姓名 真实姓名 类 型 varchar2 varchar2 varchar2 长 度 50 50 50 可否为空 否 否 否 主键 是 否 否

13

本科生毕业论文(设计)

订货地址 联系电话 运送方式

varchar2 varchar2 varchar2

50 50 50

否 否 否

否 否 否

address tel post

图 3-7 会员登录类图

会员注册涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-8所示。

3.5 系统详细设计

乐淘网上购物系统根据业务内容分为管理员系统、用户登录系统。系统的模块设计是在需求规格说明和系统架构的基础上,通过精化架构、分析用例、设计模块来标识设计元素,发现设计元素的行为细节,精化设计元素的定义,以确保用例实现总是最新的。系统设计是以系统分析阶段的工作为依据,寻求新系统逻辑模型的实现方法,探求建立新系统的过程。系统设计给出了系统分析阶段建设的系统逻辑模型应如何去做和怎样去做的细节。其重点是把系统功能需求转化成系统设计说明。

3.5.1 用户模块设计

用户模块主要是已注册的用户登录,密码找回;修改密码;网站信息浏览;购买商品;查看订单详情。下面对这些功能,挑选代表性功能进行详细叙述:

1.会员登录及注册

会员登录涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-7所示。

MemberLoginForm String:name String:password LoginAction Logout MemberDao getMemberInfoByname() LoginForm 14

本科生毕业论文(设计)

String:name String:password String:reallyname String:profession String:question String:anwser Int:age

图3-9 会员密码找回类图

会员密码修改涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-10所示。

Change_pwdForm String:name String:password

图3-10 会员密码修改类图

15

MemberLoginAction MemberDao addMember()

图 3-8 会员注册类图

2.会员密码找回

会员密码找回涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-9所示。

ChangeForm String:name String:answer String:question MemberDao ChangeAction getMemberInfoByname() MemberDao Change_pwdAction updateMember() getMemberInfoByname()

本科生毕业论文(设计)

(1)Change_pwdForm类

Change_pwdForm是用户修改密码缓存用户信息的Form Bean。

(2)Change_pwdAction类

Change_pwdAction调用MemberDao中的getMemberInfoByname()获取该用户信息,updateUser()更改用户密码。

(3)MemberDao类

MemberDao是用户修改信息涉及数据的访问接口,完成用户密码的修改。 3.生成订单模块

订单模块涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-11所示。

OrderInsertForm String:orderno String:goodname String:name String:reallyname String:address String:tel String:post String:price

图3-11 订单模块类图 OrderInsertAction GoodOrderDao addGoodsOrder() 3.5.2 管理员模块设计

管理员模块主要进行管理员登录;对用户信息的管理,查询用户信息功能;对商品信息的管理,即增加,删除,更改,查询功能;对订单的信息的管理,即删除,查询功能。下面对这些功能,挑选代表性功能进行详细叙述:

1.登录功能

16

本科生毕业论文(设计)

登录功能涉及的类,包括ManagerForm,ManagerLoginAction,ManagerDao。 (1)ManagerForm类

ManagerForm是缓存管理员输入数据的Form Bean,其属性与表单中的属性相对应,并提供用于验证表单数据有效性的validate()方法,以及获取和设置属性值的Get()和Set()方法。登录的表单为验证用户名和密码的业务逻辑提供参数。

(2)ManagerLoginAction类

ManagerLoginAction是涉及的用户请求与业务逻辑之间的适配器,在建立用户请求与业务逻辑之间点对点映射关系的同时,将请求与业务逻辑分离。登录的业务逻辑包括验证用户名和密码。

(3)ManagerDao类

ManagerDao是涉及数据的访问的类,主要是完成连接数据库,与数据库进行操作,查询数据。 2.查询商品信息功能

查询用户信息功能涉及的类,包括InsertForm,ShowAllGoodsAction,GoodsDao。 (1)InsertForm类

LoginForm类从数据需求的角度对记录中用户基本信息进行抽象,属性与数据库中的字段一一对应,提供获取和设置属性值的Get和Set方法。一个实例对应于上述表中的一条记录。

(2)ShowAllGoodsAction类

ShowAllGoodsAction是涉及的请求与业务逻辑之间的适配器,它在建立用户请求与业务逻辑之间点对点映射关系,将请求与业务逻辑分离。主要调用GoodsDao中的getAllGoodsInfo()方法,对数据进行查询。

(3)GoodsDao类

GoodsDao是涉及数据的访问的类,主要是完成连接数据库,与数据库进行操作,查询数据。 3.删除商品信息功能

删除用户信息功能涉及的类,包括DeleteGoodsAction,GoodsDao。 (1)DeleteGoodsAction类

DeleteGoodsAction是在建立用户请求与业务逻辑之间点对点映射关系的同时,将请求与业务逻辑分离。主要调用GoodsDao中的方法,通过参数smallid对数据进行查询后删除。

17

本科生毕业论文(设计)

(2)GoodsDao类

GoodsDao主要是完成连接数据库,与数据库进行操作,查询数据后删除。 4.增加商品信息功能

增加商品功能涉及的类,包括InsertForm,InsertGoodsAction,GoodsDao。 (1)InsertForm类

InsertForm对记录中信息进行抽象,其属性与数据库中的字段一一对应。并提供获取和设置属性值的Get和Set方法及用于验证表单数据有效性的validate()方法。

(2)InsertGoodsActon类

InsertGoodsAction是在建立用户请求与业务逻辑之间点对点映射关系的同时,将请求与业务逻辑分离。主要调用GoodsDao中的insertGoods()方法,通过参数添加进数据库中进行存储。

(3)GoodsDao类

GoodsDao主要是完成连接数据库,对数据库进行操作,添加数据。 5. 修改商品信息功能

修改商品信息功能的类,包括UpdateGoodsForm,UpdateGoodsAction,DoUpdateGoodsAction,GoodsDao。

(1)UpdateGoodsForm类

UpdateGoodsForm用户修改信息缓存用户信息的Form Bean。 (2)UpdateGoodsAction

UpdateGoodsActionn是涉及的请求与业务逻辑之间的适配器,它在建立用户请求与业务逻辑之间点对点映射关系,将请求与业务逻辑分离。主要调用GoodsDao中的getGoodsInfoBysmallid()方法,通过smallid对一条数据进行查询,装入再调用GoodsDao中的updateGoods()进行数据更新。

(3)GoodsDao

GoodsDao连接数据库,对数据库进行操作,对数据进数更新,或从数据库中将数据读取出来。

18

本科生毕业论文(设计)

4 乐淘网上购物系统的实现

4.1 系统技术实现

4.1.1 JSP简介

JSP 已发展了十几年了,几个方面都已经很成熟了,尤其是在B/S方面安全性上因为JSP用Java语言作服务器语言,Java最大优点之一就是安全,Java也把这种特点带到JSP上。JSP同样是实现动态网页的一个利器。由于他的脚本语言是Java,所以继承了Java诸多优点。运行速度、运行开销、运行平台、扩展性、安全性、函数支持、厂商支持、对XML的支持等等,ASP都不是JSP的对手。COM组件的复杂性实编程实现有一定的难度。而JavaBeans和Java的结合却是天衣无缝的。

19

本科生毕业论文(设计)

4.1.2 B/S 结构概述

相对于C/S结构,尽管C/S结构相对于更早的文件服务器来说,有了很大的进步,但与B/S相比,缺点和不足是很明显的。

首先,B/S比C/S的维护工作量大大减少了。C/S结构的每一个客户端都必须安装和配置软件。假如一个企业共有50个客户站点使用一套C/S结构的软件,则当这套软件进行了哪怕很微小的改动后(比如增加某个功能),系统维护员都必须进行这样的维护;将服务器更新到最新版本;将客户端原有的软件卸载,再安装新的版本,然后进行设置,最为可怕的是客户端的维护工作必须不折不扣的进行50次。若其中有部分客户端是在另外一个地方,则系统维护员还必须跑到该地方再进行卸载、安装、设置的工作。若某个客户端,忘记进行这样的维护,则该客户端将会碰到版本不一致的问题而无法工作

[10]

。而B/S结构,客户端不必安装及维护。其他客户端,只

要重新登录系统,使用的就已经是最新版本的软件了。

其次,B/S相对C/S能够降低总体拥有成本,C/S软件一般是采用两层结构的。而龙特璐华软件采用的是三层结构。

4.1.3 Struts 框架简介

Struts是一个基于SunJ2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。其最初萌芽于Craig McClanahan的构思,诞生至今也一年有余了。现在,Struts是Apache软件基金会旗下Jakarta项目组的一部分,由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注

[11]

。Struts把Servlet、JSP、自定义标签和信息资源(Message

Resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间。

首先事件是指从客户端页面(浏览器)由用户操作触发的事件,Struts使用Action来接受浏览器表单提交的事件,这里使用了Command模式,每个继承Action的子类都必须实现一个方法Execute。在Struts中,实际是一个表单Form对应一个Action类(或Dispatch Action),换一句话说:在Struts中实际是一个表单只能对应一个事件,Struts这种事件方式称为Application Event,Application Event和Component Event相比是一种粗粒度的事件。

20

本科生毕业论文(设计)

4.1.4 Oracle简介

Oracle的关系数据库是世界第一个支持SQL语言的数据库。Oracle的目标定位于高端工作站以及作为服务器的小型计算机。Oracle的路线同Sun微系统公司类似,都提出了网络计算机的概念。Oracle宣称自己是世界上首家百分之百进行基于互联网的企业软件的软件公司。

整个产品线包括:数据库、服务器、企业商务应用程序以及应用程序开发和决策支持工具。Oracle应用产品包括财务、供应链、制造、项目管理、人力资源和市场与销售等150多个模块,荣获多项世界大奖,现已被全球近7600多家企业所采用

[12]

。由于在电子商务方面的杰出表现,

Oracle公司在美国Mongan Stanley公司最新公布的权威性全球企业1000强中,成为全球第二大独立软件公司和最大的电子商务解决方案供应商。

4.2 系统首页实现

本页是浏览本站的首页面,在首页面中除了要考虑系统的功能,对于页的布局设计也行重要。在本页中,用户与管理员的登陆及退出的导航在上页,商品按大类别分类在左侧,以及管理员对相关用户,商品及订单的管理都在左侧,整体色调以红色为主。除了购买物品时需要用户注册登录才能使用外,其它的部分都可以供非注册用户查看。但游客及用户没有管理员的权限,不可进行对所有用户,商品,订单信息的管理。主页面如图4-1所示。

图4-1 酒店管理系统前台主页面

21

本科生毕业论文(设计)

4.3 会员注册模块的实现

注册中心模块完成用户的注册功能,点击“注册”按钮调出用户注册页面,在此页面中,输入相关信息,如会员名称,真实姓名,用户密码,年龄,职业等,点击“注册”完成注册。用户注册页面设计如图4-2所示:

图4-2 用户注册页面设计

核心代码如下:

public ActionForward execute(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) {

LoginForm loginForm=(LoginForm) form; MemberDao dao=new MemberDao(); Member m=new Member(); try {

BeanUtils.copyProperties(m,loginForm );

} catch (IllegalAccessException e) {

// TODO Auto-generated catch block e.printStackTrace();

22

本科生毕业论文(设计)

}

} catch (InvocationTargetException e) { }

dao.addMember(m); String name=m.getName();

request.getSession().setAttribute(\return mapping.findForward(\

// TODO Auto-generated catch block e.printStackTrace();

通过调用MemberDao中的addMember()方法,来对会员进行注册。

4.4 会员登陆模块的实现

4.4.1 会员登陆

会员登陆模块实现用户登陆功能,它验证用户提交的用户名和密码是否被授权,并根据访问权限为用户提供相应的业务功能。

会员登页面设计如图所示4-3所示。

图4-3 会员登陆界面

23

本科生毕业论文(设计)

图4-10 添加商品界面

4.5.4 修改商品信息功能

此模块实现对商品信息的修改功能。管理员成功登录后,查看所有商品信息,点击添加商品信息实现对所有商品的添加的功能。本模块的页面设计如图4-11所示:

图4-11 修改商品信息界面

4.5.5 查询所有订单信息功能

此模块实现对订单信息的查询功能。管理员成功登录后,查看所有订单信息,点击查看所有商品信息实现对所有商品信息的查询的功能。本模块的页面设计如图4-12所示:

29

本科生毕业论文(设计)

图4-12 查询所有订单信息

5 系统测试

5.1 系统测试方法

5.1.1 系统测试计划

测试计划是指测试阶段的测试计划。现状:目前测试文档关于测试的内容主要是测试的时间计划。而这种时间划分也是非常粗略的,而且没有依据。为什么要花这么多时间?目前只是按照个人直观、经验等方法来判断测试时间。因此,这类测试计划的随意性太大,粒度太粗,不便于管理

[13]

。目前的测试是为了测试而测试,没有规划性。如果已经知道了产品已具有的功能,可以

通过测试来检验是否每个功能都能正常使用。

5.1.2 系统测试工具

目前的测试方法都是手工测试,手工测试的效率跟测试员的经验有很大关系,需要一定的技巧性。而有部分测试类型是可以用测试工具来实现的。比如:边界测试、非法测试、功能测试、性能测试等。但自动化测试并不能代替手工测试,它是一个补充。一般来讲,测试自动化在整个测试过程中只能占到30%左右。但测试人员对测试工具不熟悉,目前只能先以手工测试为主,继续探讨自动化测试的可操作性。(手头没有自动化测试工具)白盒测试:也称为结构测试,根据程序内部逻辑结构进行测试。

5.1.3 系统测试方法和测试类型

黑盒测试:黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过

30

本科生毕业论文(设计)

测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等,主要用于软件确认测试。 “黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。

白盒测试:白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证

[14]

。“白盒”法全面了解程序内部逻辑结构、对所

有逻辑路径进行测试。“白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。

5.2 系统测试的目的和原则

在任何软件系统的开发过程中,尤其是在进行大型软件系统的开发中,任何一个编程人员都不可避免地会产生错误。为了尽可能地发现并改正系统设计中的错误,减少错误造成的损失,保证系统开发的质量,需要进行系统的测试。

5.3 系统测试

5.3.1 系统登录测试要点

测试要点:用户名和密码。 测试路径:用户名和密码是否为真。

测试结果:为真,进入系统;为假,提示重新输入用户信息。

5.3.2 商品购买测试要点

测试要点:用户的身份。

测试路径:从浏览商品的页面直接进行商品购买是否能成功。

31

本科生毕业论文(设计)

测试结果:无法成功购买,提示必须先进行会员登录,并自动跳转至登录页面。

5.3.3 操作权限测试要点

测试要点:用户身份。

测试路径:在首页能否对所有信息进行管理。

测试结果:身份为管理员,可进行操作;不为管理员时,提示没有权限。

5.3.4 数据输入测试要点

测试要点:数据录入类型、数据约束。 测试路径:输入类型是否正确,是否允许为空。

测试结果:输入类型正确,能写入数据库增加新记录,否则提示重新输入。输入空值,允许为空,则正常增加记录,否则提示不允许为空。

当输入数据为数据表中限定的类型时,才能增加新的记录;若输入的数据类型不正确,则无法增加新的记录。

5.3.5 数据删除测试要点

测试要点:数据点击即可直接无条件删除。 测试路径:存在子记录或不存在子记录均点击删除。

测试结果:存在子记录,提示无法成功直接删除,并返回至上一个页面;当不存在子记录时,可以直接删除成功。删除时又确认信息提示。

5.4 系统测试效果

1.根据上面的数据输入测试用例,其测试效果。

当用户名或其它相关信息为空时的时候,提示框显示,不能为空。如图5-1所示。

32

本科生毕业论文(设计)

图5-1 数据输入类型测试效果

4.数据删除测试用例,其测试效果。

当管理员要低商品信息或订单信息进行删除时,会跳出提示框,进行确认后再删除相关信息,其测试效果。如图5-2所示。

图5-2 数据删除类型测试效果

33

本文来源:https://www.bwwdw.com/article/b1p6.html

Top