电子商城系统的设计与实现毕业论文.doc

上传人:文库蛋蛋多 文档编号:3989076 上传时间:2023-03-30 格式:DOC 页数:36 大小:978.50KB
返回 下载 相关 举报
电子商城系统的设计与实现毕业论文.doc_第1页
第1页 / 共36页
电子商城系统的设计与实现毕业论文.doc_第2页
第2页 / 共36页
电子商城系统的设计与实现毕业论文.doc_第3页
第3页 / 共36页
电子商城系统的设计与实现毕业论文.doc_第4页
第4页 / 共36页
电子商城系统的设计与实现毕业论文.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《电子商城系统的设计与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《电子商城系统的设计与实现毕业论文.doc(36页珍藏版)》请在三一办公上搜索。

1、电子商城系统的设计与实现计算机科学与技术专业摘要随着Internet的不断普及,日益忙碌的人们开始追求足不出户便可以利用互联网这一强大的平台来实现网上购物.本文简要介绍了电子商城系统的设计与实现的项目背景和意义,着重阐述了该系统开发实现过程,从系统的需求分析、模块设计、详细设计到系统测试维护等各个环节都进行了详尽的分析和描述.使用本系统,顾客可以很方便地注册成为会员,对商品进行浏览检索,查看商品的详细资料,然后根据各人的喜好购买心仪的商品.系统会自动为顾客生成订单,按照顾客所填写的信息提交订单并发货.系统管理员则可以对现有的商品进行添加和编辑,审查已注册的用户并对提交的订单进行处理.关键词电子

2、商城系统; 互联网; 网上购物Design and Development of E-Commerce SystemComputer Science and Technology MajorAbstract: With the constant popularity of Internet, more and more busy people began to purse the online shopping by the use of the powerful Internet platform , without leaving home This paper mainly introd

3、uces the background and significance of “Internet Shopping Mall System Design and Implementation “; focuses the development and implementation procedure of the system. From systems analysis, modular design, all aspects of maintenance are descried in this paper. In my system, customers can easily reg

4、ister as a member of the Health Products browse search, view the details of Health Products, and then buy your favorite according to their preferences for Health Products. The system will automatically generate orders for customers, and send the goods in accordance with the filled information. The s

5、ystem administrators would be able to add and edit the existing products, review the registered users and process the submitted orders.Key words: E-Commerce System; Internet; Online-shopping 目 录1 电子商城概述及开发背景11.1 电子商城定义11.2 开发背景12 需求分析12.1 需求分析设计12.1.1 用户管理模块12.1.2 商品浏览模块12.1.3 留言板模块22.1.4 购物车模块22.1.

6、5 商品管理模块22.1.6 商品分类管理模块22.1.7 订单处理模块22.1.8 留言管理模块22.2 运行环境22.3 设计原则及一般要求23 系统设计33.1 模块设计33.1.1 主模块33.1.2 公共辅助模块33.1.3 功能模块33.1.4 详细功能模块设计43.2 网上购物网站关系数据库的实现93.2.1 数据库分析93.2.2 数据库概念设计以及创建表结构104 系统实现144.1 登录模块144.2 注册模块164.3购物车模块184.4商品管理模块214.5商品类别管理模块254.6订单管理模块264.7留言板模块285 测试报告305.1 测试基本要求305.1.1

7、内容检查305.1.2 链接检查305.1.3 易用性测试305.1.4 功能检查315.1.5 容错性测试31结论及尚存在的问题32参考文献33致谢331 电子商城概述及开发背景1.1 电子商城定义电子商城源于英文E-Commerce,简写为E-shop。顾名思义,其内容包含两个方面:一是电子方式,二是商贸活动。(电子商城)指的是利用简单,快捷,低成本的电子通信方式,买卖双方不谋面面在网上开展的各种商贸活动。在全球知识经济和信息化高速发展的今天,信息化是决定企业成败的关键因素,信息的有效利用成为新经济模式中企业增强竟争力的重要手段。电子商务作为一种崭新的商务运作模式,越来越受到企业的重视。电

8、子商务的魅力在于它能打碎现存的一切链条结构,让产品群,客户群,技术群,物流群等重新排队,优化组合,为企业业务的重新组合提供无限商机,开辟新的竞争领域,形成新的利益分配格局。1.2 开发背景该电子商城系统作为一个学习的精简案例,满足人们对各种日常生活用品的需求,例如:电子类产品,精品礼品,各种学习书籍等,在如今在线购物已经成为一种时尚,人们足不出户就可以购买所需的商品,因其具有方便,安全,友好的交互性特性,顾客群体也逐渐庞大,尤其是网络时代中成长的年轻人。现在流行的电子商务有B2B,B2B,C2C等类型,该电子商城要采用的是B2B类型,它可以使顾客通过网络购物,浏览商品,查询订单,查看公告和销售

9、排行,网上留言等。通过对一些典型电子商城网站的考察,分析,并结合企业要求及市场调查。2 需求分析2.1 需求分析设计按功能初步分为以下七个模块,详细的需求分析如下几节。2.1.1 用户管理模块用户登录和注册属于用户管理的一部分。用户共分为2种用户即员,管理员和普通用户,在开始界面中输入用户名和密码就要进行用户的信息验证,如果验证失败就不能登录到主界面进行相关的操作。2.1.2 商品浏览模块用户因生活或学习需要在网上选购一些商品,进入该网站后先浏览一下网站的商品,然后判断是否进行注册登录去购买,让人们都能对本网站的商品有所了解,提高网站的可用性。2.1.3 留言板模块用户浏览过网站后,或者在本网

10、站上购物后,既可以查询别人对本网站的留言,也可以给网站留下自己宝贵的意见,有利于网站的进步和发展.2.1.4 购物车模块用户登录网站后,可以选择自己需要的商品进行购买,先放入购物车,然后到前台结账,填写购买信息和个人信息完成对商品的购买。2.1.5 商品管理模块商品管理模块主要提供对商品的日常管理和维护的功能,主要有新增商品,删除商品,修改商品,查询商品可以轻松的实现网站对网站商品的管理2.1.6 商品分类管理模块商品分类管理模块主要提供对商品分类的日常维护的功能如:产看商品分类,增加商品分类,删除商品分类,修改商品分类也可以让网站管理人员轻松的实现对网站上面商品的分类管理。2.1.7 订单处

11、理模块订单处理模块主要提供对订单的处理功能如:查看订单,查看订单明细,取消订单,发货处理,完成订单可以让管理员实现对网站上面购物订单管理与实现。2.1.8 留言管理模块留言管理模块主要提供对网站留言的处理功能如:查看所有网站留言,修改留言,删除留言,可以实现网站管理员对网站留言的轻松和严谨管理。2.2 运行环境操作系统:windows2000server中文版、windows 2003 Server或者Windows XP数据库:MYSQL5.0WEB服务器:Tomcat5.0或者Tomcat6.0 Jdk1.5.0开发工具:MyEclipse7.52.3 设计原则及一般要求参照各模块的功能与

12、具体的特点,我们设计的整个网上购物网站应达到以下目的:(1)稳定性。整个系统应能稳定运行,硬件配置的局部改变不会影响整体的正常运行,其它系统的差错不会导致办公自动化系统无法正确运作。(2)准确性。系统管理员按操作指南操作产生的权限数据,和所有前台用户的操作与数据库原定产生变化的实际状态应严格保持一致,杜绝错误记录、数据错位等情况的出现。(3)安全性。所有数据定时备份,在数据库中预留一个或多个最高权限帐户名及密码,避免用户误操作而造成不必要的损失。(4)可维护性。界面风格或其它可能的参数化改变(如增加新功能等)不需要重新编写源代码,用户可以自己完成。(5)独立性。每一个功能模块尽量独立,减少与其

13、它模块之间的耦合性,尽可能做到按客户的需求可以选择安装那些模块,不安装那些模块。(6)易使用性。网上购物网站的界面与操作人员的交互性好,与主机间使用Browser/Server(浏览器/服务器)结构。3 系统设计3.1 模块设计3.1.1 主模块主模块设计如表3-1所示:表3-1 主模块设计模块子模块功能主模块整体设计总界面对网上购物模块和留言板模块及后台管理模块有整体的概览和认知。3.1.2 公共辅助模块模块设计如表3-2所示:表3-2 公共模块设计模块子模块功能辅助模块1.商品浏览模块2.留言板模块3后台管理模块4购物车模块1. 方便用户浏览商品信息2. 方便用户信息交流,向网站提出宝贵意

14、见。3方便管理员对后台进行管理3.1.3 功能模块功能模块主要是对各个模块主要功能的具体的更能描述功能模块设计如表3-3所示:表3-3 功能模块设计功能模块用户注册登录模块完成用户注册完成用户登录商品浏览模块在没有登录的情况下可以对网上商品就行浏览查看但不能购买 购物车模块完成用户对网站商品的购买留言板模块在没有登录的情况下可以对网站就行留言和进行留言查看商品管理模块1.商品查询2.新增商品3.删除商品4.修改商品商品分类管理模块1.新增商品分类2.查看商品分类3.删除商品分类4.修改商品分类3.1.4 详细功能模块设计1.用户登录模块本模块用户能在登陆网站后开始购买商品 如图3-1所示图3-

15、1 用户登录模块流程图2.用户注册模块本模块用户的注册成为本网站的会员,具体模块图如图3-2所示。图3-2 用户注册模块流程图3.购物车模块本模块能实现用户在登录网站后完成对本网站需要商品的购买,用户首先在登陆上网站后,可以通过商品列表浏览商品,选中自己需要的商品,点击购买,然后输入需要购买商品的数量,把商品放入购物车内,此时还有一个修改商品数量的步骤,可以让用户确认要购买商品的数量是否正确,还可以查看购物车内的商品,选择是清空购物车还是前台结账,如果是清空购物车则继续购物,如果选择前台结账则确认订单信息是否正确,然后填写个人收货信息,完成商品的购买。购物车流程图如图3-3所示。图3-3 购物

16、车模块流程图4.留言板模块 用户登陆如网站后,可以通过留言板实现对网站的留言,首先可以查看别人的留言,然后也可以发表自己的言论,以及对网站或者是商品等其他方面的建议,有利于进行用户和网站之间的沟通,有力于网站的发展。5.商品管理模块商品管理模块主要提供对商品的日常管理和维护的功能,主要有:1)新增商品,可以新增加网站出售的商品;2)删除商品,可以把不需要的商品进行删除;3)修改商品,可以修改现存的商品的信息;4)查询商品,可以输入关键字对商品进行查询;商品管理的流程图如图3-4所示。图3-4 商品管理模块流程图6 留言管理模块留言管理模块主要提供对网站留言的处理功能如:查看所有网站留言,搜索网

17、站留言中相关方面内容的信息,修改留言的信息,还可以删除留言。留言管理流程图如图3-5所示 图3-5 留言管理流程图 7. 订单处理模块订单处理模块主要提供对订单的处理功能如:1)查看订单,可以查看订单的基本信息;2)查看订单明细,查看订单的详细信息;3)取消订单,查看后确定订单是否符合相关要求,不符合则可取消订单;4)发货处理,如果订单符合要求,确定信息后进行发货处理;5)完成订单,根据发货处理状态对订单就行完成处理; 流程图如图3-6所示 图3-6 订单处理模块流程图8. 商品分类管理模块商品分类管理模块主要提供对商品分类的日常维护的功能如:1)产看商品分类,可以输入商品分类名称关键字对商品

18、分类进行查看;2)增加商品分类,可以新增一个商品分类的信息;3)删除商品分类,可以删除一个商品分类的信息;4)修改商品分类,可以对现存商品分类信息就行修改; 商品分类流程图如图3-7所示:图3-7 商品分类管理模块流程图3.2 网上购物网站关系数据库的实现MySQL是一个真正的多用户、多线程SQL数据库服务器。MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序MySQLd和很多不同的客户程序和库组成。主要目标是快速、健壮和易用。它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。数据库在一个信息管理系统中占有非常重要的地

19、位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,报填数据的完整和一致。另外,合理的数据库结构将非常有利于程序的实现。设计数据可系统是应该首先充分了解用户各个方面的要求,包括现有的以及将来可能增加的要求。3.2.1 数据库分析针对一般网上购物网站的需求通过对网上购物过程的内容和数据流程分析,设计如下面所示的数据项和数据结构。1.用户信息:包括的数据项有:用户编号、用户姓名、用户密码、电子邮件、真实姓名、性别、提示问题、提示答案、联系电话、个人主页、兴趣爱好、自我介绍等。2.商品信息:包括的数据项有:商品编号、商品名称、类别编号、商

20、品价格、商品折扣率、商品描述、生产制造商、库存数量、是否推荐商品、商品图片等。3.商品类别信息:包括的数据项:商品类别编号、商品类别名称、商品类别描述等。4.订单信息:包括的数据项有:订单编号、用户编号、订单日期、收货地址、收货人、邮政编码、订单总额、订单处理日期、订单状态、备注(本模块用来存储联系电话)等。 5.订单明细信息:包括的数据项有:订单号、订单行号、商品编号、商品价格、商品数量等。6.留言板信息:包括的数据项有:留言序号、留言者名称、留言图片、留言时间、留言内容等。3.2.2 数据库概念设计以及创建表结构根据上节的数据项和数据结构,可以设计出能够满足用户需求的各种实体以及它们之间的

21、关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。根据上面的设计规划出的实体有:用户信息实体、商品信息实体、商品类别实体、订单信息实体、订单明细实体,留言信息实体。根据实体信息创建如下表结构和存储过程。设计数据库eshop;create database eshop;use eshop;1.用户信息表(Userinfo表),如表3-4所示。表3-4 用户信息表字段名字段类型字段说明备注IDInt用户ID主键UserNameVarchar(20)用户名允许为空PwdVarchar(30)密码允许为空EmailVarchar(45)邮箱允许为空Real

22、NameVarchar(20)真实姓名允许为空GenderVarchar(10)性别允许为空QuestionVarchar(30)提示问题允许为空AnswerVarchar(30)问题答案允许为空PhoneVarchar(10)联系电话允许为空MyPageVarchar(20)个人主页允许为空HobbiesVarchar(20)兴趣爱好允许为空SelfintroVarchar(200)自我介绍允许为空 Userinfo表的建表语句如下:CREATE TABLE userinfo ( id int NOT NULL auto_increment, UserName varchar(20) NOT

23、 NULL default , Pwd varchar(30) NOT NULL default , Email varchar(50) NOT NULL default , RealName varchar(20) default , Gender smallint(1) default 1, Question varchar(50) default , Answer varchar(50) default , Phone varchar(45) default NULL, MyPage varchar(2) default NULL, Hobbies varchar(100) defaul

24、t NULL, Selfintro varchar(200) default NULL, PRIMARY KEY (id) ENGINE=MyISAM DEFAULT CHARSET=gb2312;2.商品信息表(Goods表),如表3-5所示。表3-5 商品信息表字段名字段类型字段说明备注Goods_idInt商品ID主键(Goods_nameVarchar(50)商品名称允许为空typeidInt商品类型允许为空Goods_pricefloat商品价格允许为空Goods_discountfloat商品折扣率允许为空Goods_descVarchar(200)商品描述允许为空supplier

25、Varchar(30)生产制造商允许为空qtyInt商品数量允许为空ispreferredInt是否推荐商品允许为空Goods_picVarchar(20)商品图片允许为空Hold1Varchar(40)允许为空Hold2Varchar(20)允许为空Hold3Varchar(10)允许为空Hold4Varchar(40)允许为空Hold5Varchar(30)允许为空Goods表的建表语句如下:DROP TABLE IF EXISTS goods;CREATE TABLE goods ( goods_id int NOT NULL auto_increment, goods_name var

26、char(50) default NULL, typeid int default NULL, goods_price float default NULL, goods_discount float default NULL, goods_desc varchar(200) default NULL, supplier varchar(50) default NULL, qty int default NULL, ispreferred int default NULL, goods_pic varchar(40) default NULL, hold1 varchar(50) defaul

27、t NULL, hold2 varchar(30) default NULL, hold3 varchar(60) default NULL, hold4 varchar(40) default NULL, hold5 varchar(50) default NULL, PRIMARY KEY (goods_id) ENGINE=MyISAM DEFAULT CHARSET=gb2312;3. 商品类别表(Type表),如表3-6所示。表3-6 商品类别表字段名字段类型字段说明备注Typeidint商品类别编号主键Typenamevarchar(50)商品类别名称允许为空Typedescvar

28、char(100)商品类别描述允许为空4.订单表(Orders表),如表3-7所示。表3-7 订单表字段名字段类型字段说明备注Orderidchar(12)订单编号主键UseridInt用户编号允许为空OrderdateDate订单日期允许为空Addressvarchar(100)收货地址允许为空Contactmanvarchar(30)收货人允许为空Posecodechar(6)邮政编码允许为空Ordersumfloat订单总额允许为空DealdateDate订单处理日期允许为空Statusvarchar(10)订单状态允许为空Notevarchar(50)备注允许为空orders表 订单表

29、建表语句如下create table orders( orderid char(12) not null, userid integer null ,username varchar(20) null , orderdate datetime null ,username varchar(20) null ,orderdate datetime null ,address varchar(100) null ,contactman varchar(30) null , ordersum float null ,contactman varchar(30) null ,ordersum floa

30、t null dealdate datetime null ,status varchar(10) null ,note varchar(50) null ,constraint pk_orders primary key (orderid) ENGINE=MyISAM DEFAULT CHARSET=gb2312;Type 表: 商品类别表的建表语句如下:DROP TABLE IF EXISTS type;CREATE TABLE type (typeid int NOT NULL auto_increment,typename varchar(50) default NULL,typede

31、sc varchar(200) default NULL, PRIMARY KEY (typeid) ENGINE=MyISAM DEFAULT CHARSET=gb2312;5.订单明细表(Orders_detail表),如表3-8示。表3-8订单明细表字段名字段类型字段说明备注OrderidVarchar(12)订单ID主键RnumInt订单行号主键Goods_idInt商品编号允许为空Goods_nameVarchar(50)商品名称允许为空Goods_pricefloat商品价格允许为空qtyInt商品数量允许为空orders_detail表 订单明细表建表语句如下:create ta

32、ble orders_detail( orderid varchar(12) not null,rnum integer not null,goods_id integer null ,goods_name varchar(50) null ,goods_price float null ,qty integer null ,constraint pk_orders_detail primary key (orderid, rnum) ENGINE=MyISAM DEFAULT CHARSET=gb2312;6.留言信息表(guestbook表),如表3-9示。表3-9留言信息表字段名字段类型

33、字段说明备注Serial_noint留言序号主键Namevarchar(100)留言者名称允许为空Emotevarchar(100)留言图片允许为空Guest_timeDate留言时间允许为空Contentvarchar(1000)留言内容允许为空Guestbook表 留言信息表建表语句如下:create table guestbook(serial_no int not null primary key auto_increment,name varchar(100),emote varchar(100),guest_time datetime,content varchar(1000);4

34、 系统实现4.1 登录模块本部分主要用于本系统工作人员的登录,只有在分配了用户名和密码时才可以进入该系统,管理相应的工作,并且工作人员不能浏览数据库中的用户表和注册用户名密码,以免非法登录,不便于管理。用户登录时将按照用户名和密码进行验证,当输入错误或没有用户名和密码时会出现相应的提示(用户名或密码输入错误!请重新输入),当用户名和密码都正确时会进入程序主界面,才能进行日常管理工作。该模块的界面设计如图4-1登录界面所示。图4-1 登录界面如果登录身份验证成功,则进入主界面如图4-2所示如果用户名或密码错误则会提示用户名或者密码错误,需要重新输入,主要实现代码如下:if(user!=null)

35、request.getSession(true).setAttribute(username,UserName);tryrequest.getRequestDispatcher(page_sep.jsp).forward(request, response);catch(Throwable t)getServletContext().log(t.getMessage();elsesetAttribute(error, 用户名和密码不匹配,登录失败,请重试!);tryrequest.getRequestDispatcher(Login.jsp).forward(request,response)

36、;图4-2 登录成功购物车界面4.2 注册模块如果是合法用户则可以帮用户注册。注册流程如下:首先输入用户名,测试是否存在此用户名,如图4-3所示。如果用户名不存在,则可以使用此用户名,然后输入用户的真实名字,登录密联系地址,联系电话和电子邮箱等。图4-3 用户注册界面验证用户名主要代码实现如下:public class DB_User DB_Conn db_conn=new DB_Conn();public int add(User user)db_conn.ConnectDB();Stringsql=insert into userinfo(userinfo(UserName,Pwd,Ema

37、il,RealName,Gender,Question, Answer,Phone,MyPage,Hobbies,Selfintro)values(+user.getUsername()+,+user.getPassword()+,+user.getEmail()+,+user.getRealname()+,+user.getStrGender()+,+user.getQuestion()+,+user.getAnswer()+,+user.getPhone()+,+user.getPage()+,+user.getHobby()+,+user.getSelfintro()+);int i=d

38、b_conn.sm.executeUpdate(sql);public User get(String username) db_conn.ConnectDB();ResultSet rs=null;rs=db_conn.sm.executeQuery(sql);User user=null;if(rs.next() user=new User();ser.setUsername(username);user.setPassword(rs.getString(Pwd);user.setEmail(Email); return user;return user;确认信息填写无误后,点击注册按钮就

39、可注册成功。4.3购物车模块用户登录成功进入购物模块后,首先是对选中的商品进行购买就放入了购物车中,并且可以修改相对的数量。如图4-4所示图4-4 购物车界面在此界面中,用户可以对选中的此商品的数量进行确认修改,也可以删除购物车中的此件商品,也可以点击清空购物车把选中的商品全部删除。/如果变量action的值为add,则对客户购买商品数量进行设置:若购物车中尚不存在此类商品或此类商品数量为0,则根据客户的需要对商品的数量直接设置,若购物车中已经存在此种商品,则在商品原数量的基础上进行相加。具体代码如下所示:if(action.equals(add)String goods_id=(String

40、)request.getParameter(goods_id);String goods_number=(String)request.getParameter(number);int number=0;try number=Integer.parseInt(goods_number);catch (Exception ex) System.out.println(ex.getMessage();int id=Integer.parseInt(goods_id);if(vector=null) vector=new Vector();Goods goods=new Goods();goods=

41、db_goods.listgoods(goods_id);goods.setGoods_number(number);vector.addElement(goods); request.getSession(true).setAttribute(vector,vector);RequestDispatcher rd = request.getRequestDispatcher(goods_show.jsp);rd.forward(request,response);else/使用flag标记来判断购物车中是否存在同类商品,若购物车中存在同类商品,则赋flag的值为1int flag=0;for

42、(int i=0;ivector.size();i+) Goods goods=(Goods)vector.elementAt(i); if(goods.getGoods_id()=id) flag=1; int num=number+goods.getGoods_number(); goods.setGoods_number(num); vector.setElementAt(goods,i);还可以点击继续购物继续回到购物页面上面继续购物如果已经选购完了自己需要的商品并且都确认无误后,点击前天结账按钮进入前台结账页面进行结账处理。 如图4-5所示图4-5 前台结账界面如果是选择继续购物则继

43、续往购物车里面添加商品,如果是完成了购物则需要填写并确认你的填写信息是否正确,若正确无误则点击确认按钮就行订单的生成,以及订单明细的生成。如图4-6所示图4-6 确认信息界面具体的实现代码如下所示:/如果变量action的值为confirm,则确认帐单,完成购物。if(action.equals(confirm)DB_orders db_orders=new DB_orders();DB_orders_detail db_order_detail=new DB_orders_detail();String orderid=request.getParameter(orderid);db_orders.mod_status(orderid);Vector glist=new Vector(); glist=(Vector)request.ge

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号