完成版实训文档Word下载.docx

上传人:b****6 文档编号:18808339 上传时间:2023-01-01 格式:DOCX 页数:27 大小:651.99KB
下载 相关 举报
完成版实训文档Word下载.docx_第1页
第1页 / 共27页
完成版实训文档Word下载.docx_第2页
第2页 / 共27页
完成版实训文档Word下载.docx_第3页
第3页 / 共27页
完成版实训文档Word下载.docx_第4页
第4页 / 共27页
完成版实训文档Word下载.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

完成版实训文档Word下载.docx

《完成版实训文档Word下载.docx》由会员分享,可在线阅读,更多相关《完成版实训文档Word下载.docx(27页珍藏版)》请在冰豆网上搜索。

完成版实训文档Word下载.docx

1.1本课题的研究意义

进入20世纪90年代以后以因特网为代表的计算机网络得到了飞速的发展,以从最初的教育科研网络逐步发展成为商业网络。

当前世界经济正在向知识经济转变。

人们希望能够从书中得到知识,就需要有一个快捷高效的购物环境,建立一个网上综合性的购物网站,可以满足这方面的需求,它还提供给用户网上浏览、查询及订购服务。

同时,银行开办的网上支付业务也为消费者和经营者提供了一个便利的交易平台。

1.2本课题的研究背景

新世纪的到来,Internet和计算机网络技术的蓬勃发展,网络化和全球化已成为不可抗拒的世界潮流。

个人要生存,企业要发展,就必须采取新的生存方式、竞争手段去适应它。

由于电子商务的出现,传统的经营模式和经营理念将发生巨大的变化。

电子商务主要以飞速发展的遍及全球的Internet网络为架构,以交易双方为主体,以银行支付和结算为手段,以客户数据库为依托的全新商业模式。

电子商务将会创造巨大的效益和机会,会将市场的空间形态、时间形态和虚拟形态结合起来,将物流、资金流、信息流汇集成开放的、良性循环的环路,使经营者以市场为纽带,在市场上发挥最佳的作用,得到最大的效益。

电子商务的发展,不仅将有利地推动Internet的发展,对社会的进步和经济的变革产生深远的影响,更重要的,它本身的发展成熟为我们提供了许许多多的机会。

 

2需求分析

2.1业务需求分析

网站的制作已经不单单是把企业想要表达的内容摆放在网站上那么简单,当今的网站设计包含了更多的设计元素,给予浏览者更多的视觉享受。

现在企业营销商需要用一些更新颖更有效的方式增强竞争力。

建设一个宣传自身商品形象的电子商务营销模式的网站是一种有效的方法。

另外,通过电子商务网站,广阔自己的营销方式和市场,能够帮助企业营销商从鱼龙混杂的市场中脱颖而出,完善企业销售与服务的环节,最终提升企业的价值与经济效益。

2.2用户需求分析

这个网站以上面的业务需求为基础,进一步提出网站需要完成的以下任务:

网站需要让供应商、客户以及浏览者能看到商城的信息及动态,另一个重要的内容就是能够显示出该商城现有的各类型商品及其详细信息;

由于消费者的需求在增长和变化,商城在面对面销售的基础上也要随之发展出相应的服务,如在线订购等技术。

另外,企业营销商除了能与普通客户一样浏览网站之外,还需要对网站进行管理。

企业需要定期更新现有商品的详细信息、商城动态和联系方式,必要时还要对企业的介绍做更改。

对于消费者通过网站提交的各种订单能够进行处理以方便销售。

2.3功能需求分析

根据上面的需求分析,需要设计出网站的前台与后台。

用户在前台所浏览的内容,网站的后台需要能相应的做出更新或修改。

根据以上的想法,设计出网站的功能:

前台用户功能:

用户注册、登录;

购物车;

订单查询;

个人资料修改;

后台管理功能:

添加商品;

3总体设计

3.1系统的总体的结构

图3.1网上书店总体结构图

网上购物系统主要分为,前台用户模块以及后台管理员模块,用户模块又包含浏览商品模块,查询商品模块,购物车模块,用户登录模块,用户登录后有含订单模块,收货信息模块。

管理员模块分为添加、修改、删除商品模块。

3.2系统的E-R图

图3.2系统E-R图

3.3系统功能

3.3.1系统前台功能

前台业务主要面向客户。

用户可以浏览网站主页、商品的介绍和一些服务信息。

前台业务流程如图3.3.1所示。

图3.3.1前台业务流程图

3.3.2系统后台功能

在网站设计中,管理员完成对网站的维护与管理的工作。

管理员可以对商品及商品分类的信息进行新增,修改及删除管理。

流程图如图3.3.2所示。

图3.2后台业务流程图

3.4系统数据流图

根据前台功能,可以将用户的活动分为两类。

用户浏览所使用到的数据归纳为站内信息,如商品信息等。

而用户提交的订单则作为网站的订单数据。

相应的,根据后台功能,管理员对网站内容的添加、更新和删除等所操作的数据定义为商城信息。

网站数据流的总体图如图3.3所示。

图3.3网站数据流的总体图

4详细设计

4.1数据结构

用户信息表:

用于存放用户相关的基本信息。

商品连接表:

用于连接商品详情表,商品属性介绍表,商品属性表。

商品属性介绍表:

用于说明属性的类型。

例如:

产地(介绍):

北京(属性)。

商品属性表:

用于存放商品的各种属性。

商品类别表:

用于存放商品的类别信息。

商品图片表:

用于存放商品所对应的图片(一个商品可对应多个图片)

订单明细表:

用于存放用户所有的订单信息。

订单表:

用于存放订单的各种属性等详细信息

支付表:

用于存放支付方式。

物流方式表:

用于存放物流方式。

接收详情表:

用于存放收货信息。

发票表:

用于存放发票相关信息。

4.1.1用户信息表user

图4.1.1用户信息注册表图

userid字段为用户ID,主键,自增长;

username字段为用户名;

password字段为密码;

realname字段为用户真实姓名;

amount字段为用户累积消费金额;

question字段为找回密码所需的问题;

answer字段为问题所对应的答案;

tel为联系电话;

email为电子邮件。

4.1.2商品信息表product

图4.1.2商品信息表

productid字段为商品ID;

productname字段为商品名称;

categoryid字段为商品类别ID;

storecount字段为商品库存;

marketprice字段为商品的市场价;

saleprice字段为商品的销售价;

hit字段为商品的点击量;

picture字段为商品的图片;

addtime字段为商品的添加时间;

isdel字段为商品是否下架;

content字段为商品的信息介绍。

4.1.3商品连接表attrvalue

图4.1.3商品连接表

id字段为商品连接表id;

attributeid字段为商品介绍表的id;

valueid字段为商品属性表的id;

productid字段为商品详情表的id。

4.1.4商品属性介绍表attribute

图4.1.4商品属性介绍表

attributeid字段为商品属性介绍的id,主键,自增长;

name字段为商品属性介绍的命名。

4.1.5商品属性表value

图4.1.5商品属性表

valueid字段为商品属性id;

valuestr为商品属性名称。

4.1.6商品类别表category

图4.1.6商品类别表

categoryid字段为商品类别id;

categoryname字段为商品类别名称;

parentid字段为父类id;

level字段为所属几级分类

4.1.7商品图片表pic

图4.1.7商品图片表

picid字段为商品图片id;

picurl字段为图片路径;

productid字段为商品的id。

4.1.8订单表明细表orderdetail

图4.1.8订单明细表

orderdetailid字段为每个订单的id;

productid为商品信息的id;

buycount字段为购买的商品数量;

orderno字段为订单号。

4.1.9定单表orders

图4.1.9订单表

Orderid字段为订单id,orderno字段为订单编号,userid字段为用户id,address字段为收货地址,bz为备注信息,payway为支付方式的id,sendwayid为发送方式id,total字段为总价,addtime字段为添加订单的时间,status字段为订单的状态。

4.1.10支付表payway

图4.1.10支付表

Paywayid字段为支付方式id,主键,自增长,title字段为支付方式名称。

4.1.11物流方式表sendway

图4.1.11物流方式表

Sendwayid字段为发送方式id,主键,自增长,sendway为发送方式名称,sendmoney为运费。

4.1.12接收详情表receive

图4.1.12接收详情表

Receiveid字段为接受信息的id,recerver字段为接受人,address字段为收货地址,mobile字段为手机号,phone字段为电话号,mail字段为邮箱地址,postcode字段为邮编,userid字段为用户id.

4.1.13发票表invovie

图4.1.12发票表

Invocieid字段为发票id,title字段为标题,content字段为发票内容,orderno字段为订单编号。

4.2页面设计与实现

整个系统分为了前台功能模块和后台功能模块。

4.2.1前台页面

1.京西主页面

(1)网站导航:

主要用户显示网站的旗帜广告、各功能模块导航;

(2)用户登录:

用户在此注册、登录或找回密码;

(3)左侧导航:

用户可以根据需求选择不同的类别商品进行浏览;

(4)商品展示区:

按后台添加商品的时间,价格等顺序展示商品。

2.商品列表页面

(2)商品展示区:

3.商品详情页

(2)商品图片展示:

鼠标移动到商品图片上能查看多个图片细节;

(3)商品介绍:

用于显示商品的各种参数属性等,每显示3个属性换次行。

.

(4)购物车:

添加购物车就是把用户选中的商品暂时存放在购物车中,当用户在前台首页中单击商品展示区的“购买”按钮时,系统会将该商品的详细信息展示在查看物品清单页面中。

用户在单击物品清单页面下方的“放入购物车”链接,便可以将该商品放入购物车中。

添加商品的代码流程是从session中读取shop对象,如果为空则说明还没有进行购物或者已经清空了购物车,需要新建购物车对象;

将商品名称与购物车列表中的商品名称对比,如果已经存在,则把商品数量加1。

流程图如下:

4.加入购物车页面

(3)结算按钮:

如果用户没有登录则跳转到用户登录页面,如果已经登录则进入收货信息填写页面。

流程图如下图:

5.用户登陆页

(1)用户名、密码:

能够进行非空验证

(2)密码:

采用MD5加密后存放在数据库中的。

(3)验证码功能:

随即生成验证码。

用户登录流程图如下:

6.填写/修改收货信息页

(2)保持收货人信息按钮:

进入信息核对页面。

4.2.2后台页面

1.商品查询列表页面

(1)商品查询、删除、修改:

管理员可以按照商品类别,价格区间查询商品

2.后台商品添加/修改页

5详细设计

5.1系统测试原则

序员应避免测试自己编写的程序;

测试用例的设计必须包括预期的输出结果;

测试用例应包括有效的和期望的输入情况,也要包括无效的和不期望的输入情况;

所有的测试都应追溯到用户需求,所有测试活动都应该是有计划的,并且计划能够得到保障。

只检查程序是否做了它应该做的事这仅完成了测试工作的一半,另一半则是要检查程序是否做了它不该做的事;

一段程序中存在错误的概率与在这段程序中已发现的错误数成比例;

测试上作必须有明确的目标;

尽早地和不断地进行软件测试;

穷举测试是不可能的,充分覆盖程序逻辑是有可能的。

5.2系统测试的方法

软件测试的方法和技术是多种多样的。

对于软件测试技术,可以从不同的角度加以分类:

从是否需要执行被测软件的角度,可分为静态测试和动态测试。

从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为白盒测试和黑盒测试。

(1)黑盒测试

黑盒测试也称功能测试或数据驱动测试或基于规范的测试,它是在己知产品所应具有的功能的前提下,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者对程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。

黑盒测试方法主要有等价类划分、边值分析、因果图、错误推测等。

“黑盒”法着眼于程序外部结构,不考虑内部逻辑结构,只是针对软件的界面和软件需求规格说明中规定的功能进行测试。

“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。

实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。

(2)白盒测试

白盒测试也称结构测试或逻辑驱动测试或基于实现的测试,它是知道产品内部工作过程。

可通过测试来检测产品内部动作是否按照规格说明书的规定止常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都能按预定要求正确工作。

白盒测试的主要方法有程序逻辑驱动测试、基本路径测试和数据流测试等。

“白盒”法需要全面了解程序的内部逻辑结构、对所有逻辑路径进行测试。

因此,白盒”法是穷举路径测试。

但即使每条路径都测试了仍然可能有错误。

第一,穷举路径测试不能查出程序违反了设计规范,即程序本身是个错误的程序。

第二,穷举路径测试不可能查出程序中因遗漏路径而出错。

第三,穷举路径测试可能发现不了一些与数据相关的错误。

5.3测试环境

数据库类型和网络类型:

MYSQL数据库

其他特殊设备:

JSP应用服务器(Tomcat6.0)

5.4实例测试

测试条目

测试数据

测试结果

商品结算功能

结算购物车的商品

(未登录)跳转到登录界面/(登录后)填写收货信息

用户/管理员登陆功能

输入密码123456,用户liuge

弹出对话框:

输入验证码

商品的添加功能

添加商品信息

商品信息添加成功

商品的查询功能

选择不同的查询条件

显示正确商品信息

商品的编辑功能

选择要编辑的商品信息

商品删除、修改、成功

6结论

我的毕业设计论文具体论述了网上购物系统的主要功能及体系结构,重点讨论了系统的各项功能模块、各模块的系统流程,及模块功能的实现,每个模块在都能完成其功能的结果下将其综合成一个完整的系统。

目前基于该模型的系统处于实验室阶段,还存在许多问题与不足,很多功能都还没实现,例如生成订单,用户注册的界面,结算时数量的加减等。

在编写论文的时间里,我在跟着老师的视频学习制作中,完成了网上购物系统的设计。

期间我遇到了若干问题和解决了不少的问题。

我对电子商务的认识从无到有,有了较为具体详细的了解。

我所建立的网上购物系统只是一个稍显简单的网上购物系统,真正电子商务所涉及到的方方面面的问题我未曾遇到或现有的条件限制而未能实现。

网上购物系统并不是我想象的那么简单,它包括了编写程序、数据库设计、网页制作、图象处理、版面设计、数据采集、文本编辑、服务器管理等等,要搞好一个好的,完善的网站需要一个详细的、合理的、可行性的规划设计。

在具体实施的过程中,在程序的调试上出现了很大的问题,要使用浏览器来浏览才能找出错误所在,这一定程度上延长了调试时间。

在开始的时候往往要为了找一个小错误花上大半天的时间。

经过多写程序,现在一定程度上已经能快速的找出错误,并能熟练的操作数据库。

随着Web技术的进一步发展和Internet的逐渐大众化,基于Internet的电子商务系统无疑比传统商务具有更加广阔的应用前景。

而如何提高电子商务系统中的数据访问效率、交易平台的安全性及事务处理的能力仍是当前人们所关注的热点问题。

这些问题有待于以后作更深入的探讨,相信在不久的将来电子商务将表现出越来越大的作用。

在此要感谢我们的指导老师杨东平为论文的最终成稿提供了很多宝贵的意见。

附录

1.分页技术

分页显示是Web数据库应用中经常遇到的问题,当用户的数据库查询结果远远超过了计算机屏幕的显示能力的时候,该如何合理地将数据在页面显示就成为一个很重要的问题了,而分页显示正好解决了这个问题。

下面是分页显示的具体代码:

packagecom.util;

//用于保存分页的信息

publicclassPageBean{

//当前页

privateintpageNo;

//页大小

privateintpageSize=20;

//记录总数

privateinttotalCount;

//总页数

privateintpageCount;

//默认构造方法

publicPageBean(){

}

//非默认的构造方法

publicPageBean(intpageNo,intpageSize,inttotalCount){

//this.pageNo=pageNo;

this.totalCount=totalCount;

this.pageSize=pageSize;

this.pageCount=getPageCount();

setPageNo(pageNo);

publicintgetPageNo(){

returnpageNo;

publicvoidsetPageNo(intpageNo){

//如果当前页>

实际的总页数

if(pageNo>

this.pageCount){

pageNo=this.pageCount;

}

if(this.pageCount==0){

pageNo=1;

this.pageNo=pageNo;

publicintgetPageSize(){

returnpageSize;

publicvoidsetPageSize(intpageSize){

this.pageSize=pageSize;

publicintgetTotalCount(){

returntotalCount;

publicvoidsetTotalCount(inttotalCount){

this.totalCount=totalCount;

//计算记录页数

publicintgetPageCount(){

if(totalCount%pageSize==0){

pageCount=totalCount/pageSize;

}else{

pageCount=totalCount/pageSize+1;

returnpageCount;

publicvoidsetPageCount(intpageCount){

this.pageCount=pageCount;

}

2.MD5加密技术

importjava.io.UnsupportedEncodingException;

importjava.security.MessageDigest;

importjava.security.NoSuchAlgorithmException;

//用于计算某一字符串的MD5密文的

publicclassMD5{

/**

*@paramargs

*/

publicstaticvoidmain(String[]args){

System.out.println("

liuge的MD5密文是:

"

+md5("

123456"

));

/*UsedbuildingoutputasHex*/

privatestaticfinalchar[]DIGITS={'

0'

'

1'

2'

3'

4'

5'

6'

'

7'

8'

9'

a'

b'

c'

d'

e'

f'

};

*对字符串进行MD5加密

*@paramtext明文

*@return密文

*/

publicstaticStringmd5(Stringtext){

MessageDigestmsgDigest=null;

try{

//使用何种消息摘要算法(SHA、MD5)

msgDigest=MessageDigest.getInstance("

MD5"

);

}catch(NoSuchAlgorithmExceptione){

thrownewIllegalStateException(

"

Systemdoesn'

tsupportMD5algorithm."

msgDigest.update(text.getBytes("

utf-8"

}catch(UnsupportedEncodingExceptione){

tsupportyourEnc

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 冶金矿山地质

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1