1、 目 录第 1 章 绪论 .11.1 课题背景 11.2 研究意义 11.3 设计目标 1第 2 章 开发工具及相关技术简介 .22.1 JAVA 语言 22.2 ECLIPSE 22.3 TOMCAT22.4 MYSQL 与 NAVICAT FOR MYSQL.22.5 MVC 框架 .32.6 B/S 架构 .3第 3 章 系统总体设计 .43.1 功能模块分析 43.1.1 前台功能模块分析 .43.1.2 后台功能模块分析 .43.2 业务流程分析 43.3 可行性研究 43.3.1 技术可行性 .53.3.2 经济可行性 .53.3.3 管理可行性 .53.4 数据库设计 53.4.
2、1 数据库需求分析 .53.4.2 数据库概念设计 .63.4.3 数据库逻辑设计 .63.4.4 数据库结构实现 .8第 4 章 系统详细设计与实现 104.1 界面设计原则 .104.2 主要功能及界面的实现 104.2.1 前台子系统的设计与实现 104.2.2 后台子系统的设计与实现 13第 5 章 系 统测试 165.1 测试环境 165.2 测试 过程 16第 6 章 总结与展望 206.1 总结 .206.2 展望 .20参 考文献 .21致 谢 .22附 录 .230第 1 章 绪论1.1 课题背景从 21 世纪以来,作为一种新型的经营模式,电子商务得到了长足的发展,特别是近几
3、年信息速度高度发达的经济环境下,日益趋向成熟。并且人们已经逐步接受网上购物这一观念。从电商发展至今,可以看得出开发一个电子商务网站的价值所在:除了投资少,回收快,基本不需要占压资金之外,24 小时的营业时间以及不受店面地理位置影响都是其显著特点。而对于消费者而言,采用电子商务方式可以高效、便捷和低成本的实现购买活动。在中国发展网上购物已经具有良好的消费者基础,网上购物方式日趋被大家所接受。因此设计一个电子商务网站具有很好的应用和开发前景。1.2 研究意义现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重每一个细小的环节,这样才能使得在电子交易时避免不必要错误发生。我们将使用HTM
4、L、JSP 等技术来编辑网页,采用 MVC 开发模式,以 B/S 为架构,并运用 JDBC技术把数据库和动态网页相关联 1。本设计参照实际的网店的业务逻辑建立而成,同时自己建立数据库,使得所需商品信息可以及时的保存、更新,这样,前台可以更好的完成网上购物体验,而管理员也可以更好的及时的了解商品买卖的情况。1.3 设计目标通过本电子商务网站,顾客可浏览商品信息,搜索到自己想要的商品,并可以完成对商品下单等操作。而后台管理员可以管理注册用户的信息,同时也可以完成对商品、订单和新闻等的管理操作。本网站致力于提供给用户完善的购物体验,同时方便管理员对后台的管理。0第 2 章开发工具及相关技术简介软件的
5、开发工具用以支持软件开发的相关过程、活动和任务。运行环境为工具集成和软件的开发、维护及管理提供统一的支持。本系统依据开发的实体需求,采用的开发工具有 Eclipse、Tomcat、MySQL 和 Navicat For MySQL 等。开发工具在软件开发过程中是必不可少的,其属于一种被软件开发工程师定性的认为是为特定的软件包、系统(或软件)框架以及操作平台等创建应用性软件的特殊软件。在一个完善的系统的开发过程中,必要的开发工具将为整个开发的过程减少较多的成本和时间,提高了开发效率。而每个系统的开发平台不一样,因此其所搭建的开发环境当然也会有很大的差别。2.1 Java 语言Java2是一种可以
6、撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台(即 JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java 更具备了显著优势和广阔前景。Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。2.2 Eclips
7、eEclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Kit,JDK) 。2.3 TomcatTomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好 Apache 服务器,可利用它响应对 HTML 页面的访问请求。2.4 My
8、SQL 与 Navicat For MySQLMySQL3是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,它是用于访电子商务网站的设计与实现1问数据库的最常用标准化语言。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。Navicat For MySQL 是一款强大的 MySQL 数据库管理和开发工具,它为专业开发者提供了一套强大的足够尖端的工具,但对于新用户仍然易于学习。Navicat For MySQL 基于 Windows 平台,为 MySQL 量身订作,提供类似于 MySQL 的用管理界面工具。此解决方
9、案的出现,将解放 php,Java 等程序员以及数据库设计者、管理者的大脑,降低开发成本,为用户带来更高的开发效率。2.5 MVC 框架MVC4是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC 应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。最典型的 MVC 就是 JSP + Servlet + Javabean 的模式。2.6 B/S 架构B/S5最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零安装、零维护。系统的扩展非常容易。B/S 同时具有升级和维护方式相对简单、成本较低等。2第 3 章
10、系统总体设计3.1 功能模块分析本电子商务网站涉及到两种业务角色,即前台用户角色和后台管理员角色。3.1.1 前台功能模块分析(1)用户信息模块,即用户注册、用户登录、用户查看和修改个人信息;(2)商品信息模块,即分类查看商品信息、搜索商品信息;(3)购物车信息模块,即添加购物车、删除购物车、搜索购物车信息;(4)订单信息模块,即添加订单、删除订单,搜索订单信息;(5)新闻信息模块、即浏览发布的新闻信息;(6)留言板信息模块、即添加留言,查看所有的留言信息;3.1.2 后台功能模块分析(1)管理员信息模块,即管理员登录、查看个人信息、修改个人信息;(2)用户管理模块,即查看所有用户信息、搜索用
11、户信息、删除用户;(3)商品管理模块,即添加商品、查询商品、删除商品;(4)订单管理模块,即查看所有订单信息,搜索订单,删除订单;(5)新闻管理模块,即查看所有的新闻,搜索新闻,修改新闻,删除新闻;(6)留言板管理模块,即查看所有留言信息,删除留言;3.2 业务流程分析通过本电子商务网站分为前后台两种角色管理,前台用户可以完成对应的业务逻辑,如图 1 所示。后台管理员完成对应的业务逻辑,如图 2 所示。图 1 前台业务流程图 图 2 后台业务流程图 3.3 可行性研究可行性分析能使新系统达到以最小的开发成本取得最佳的经济效益,其目的也是电子商务网站的设计与实现3根据开发管理信息系统的需求,通过
12、初步调查和系统目标分析,对于本电子商务网站设计从技术上、经济上和管理上进行是否可行的研究与分析,这既是保证资源的有效合理利用,也是避免在日常工作中的失误而导致的种种浪费现象3.3.1 技术可行性技术方面,本系统采用 Java 语言进行设计,Java 也是我们比较熟悉的语言。由于是初次设计电子商务网站,在技术和知识层面上的欠缺,导致在制作过程中遇到许多的困难,编程和设计的时候,明显感觉到知识积累的不够,并且很多知识点已经淡忘。通过与老师的沟通,在老师的细心指导下,以及我们的一起努力,翻阅了大量的资料,多操作多实践,本系统才得以比较顺利的开发出来。因为实践和技术方面的不足,使得我们设计的程序依然存
13、在很多不完善的地方,后期好好的钻研,使本系统能更完善更适用。3.3.2 经济可行性本系统相对较小也比较简单,不需要投入大量资金,同时又存在着实用性,能改善使用方法在财力和人力上的过度消耗。因此一经使用便可收到很好的成效,做到合理节约和合理利用资源,既提高了工作效率并且也减少了工作人员的工作量,这使得本系统在处理业务方面得到很大的提升空间。3.3.3 管理可行性对于绝大多数用户而言,他们已经养成了网上购物的习惯。对于购物方式,也已相对比较熟悉。对于本网站而言,简洁友好的界面可以使用户快速的了解本网站提供的业务,从而能更好的操作以完成网上购物的体验。对于后台管理者而言,本系统提供的后台操作简单,模
14、块划分简洁明了。因此无论是用户,还是管理员都能很好的操作本网站提供的功能,在管理方面是可行的。 3.4 数据库设计数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作需求。信息管理要求是指在数据库中应该存储和管理哪些数据对象;数据操作要求是指对数据对象需要进行哪些操作,如查询、增、删、改、统计等操作 6。43.4.1 数据库需求分析数据库需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等) ,充分了解系统的工作概况,明确用户的各种需求,然
15、后在此基础上确定系统的功能,因此必须充分考虑今后可能的扩充和改变,不能仅仅按照当前应用需求来设计数据库。本系统相对比较简单,从前台到后台操作涉及到的实体及其属性的定义都能满足系统的要求,因此在考虑后期可能的应用需求,本数据库的设计相对合理,应用性良好。 3.4.2 数据库概念设计数据库概念设计阶段是在需求分析的基础上,设计出能满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。在本电子商务网站中,各项实体之间的关系并不复杂,本系统的数据库没有设计外键关联,只是将关联数据库的字段存放到需要的数据库表中,从而能达到数据关联的目的,如图 3 所示,因此概念设计也相对比较容易。图
16、 3 数据库实体关系图3.4.3 数据库逻辑设计在数据库逻辑结构设计阶段,需要将数据库概念结构转化为 MySQL 数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体结构的基础上,形成对应的数据库表,如表 1表 7 所示。表 1 用户基本信息表电子商务网站的设计与实现5表 2 商品基本信息表表 3 订单基本信息表表 4 购物车基本信息表表 5 新闻基本信息表表 6 管理员基本信息表表 7 留言板基本信息表63.4.4 数据库结构实现在需求分析、概念结构设计的基础上得到数据库的逻辑结构之后,就可以在MySQL 数据库系统中实现该逻辑结构。实现数据库的逻辑结构的方式是借助 Navi
17、cat For Mysql 来管理实现,详细步骤如下所述。(1)打开 Navicat For Mysql,选择“ 连接”出现“新建连接” 界面,在“连接名”输入框中填入项目名(如 eshop) ,其他选择对应的数值,如端口号、数据库的用户名和密码等。当点击测试连接时,若如图 4 所示的效果,则连接成功,点击确定即可看到如图 5 所示的界面。图 4 新建数据库连接 图 5 连接列表(2)选中“eshop” ,鼠标右击选择 “新建数据库”,在“数据库名”标签中填入数据库名(如 eshop) , “字符集”选择“utf8-UTF-8 Unicode”,其他选择默认,如图 6 所示。图 6 新建数据库
18、 图 7 新建表(3)双击展开“eshop”数据库,选中“表” ,鼠标右击选中“新建表”,如图 7 所示,进入填写数据项信息的界面,选中下面的“自动增加” (表示 id 为自动增加) ,填写完信息后保存,提示填入表名(如 e_user)即可,如图 8 所示。电子商务网站的设计与实现7图 8 e_user 数据表 (4)这样我们在 MySQL 数据库系统中就创建了一个 eshop 的数据连接,并在该连接下创建一个 eshop 数据库,并且能够建立所需的数据表,如图 9 所示。后期的操作中只要连接到该数据库,就可以直接对数据库中的数据表进行操作。图 9 所有的数据表8第 4 章 系统详细设计与实现
19、4.1 界面设计原则界面设计是屏幕产品的重要组成部分。界面设计是一个复杂的有不同学科参与的工程,认知心理学、设计学、语言学等在此都扮演着重要的角色。用户界面是用户与程序沟通的唯一途径,要能为用户提供方便有效的服务。用户界面设计的三大原则是:置界面于用户的控制之下、减少用户的记忆负担、保持界面的一致性。4.2 主要功能及界面的实现本电子商务网站采用的是 JSP7技术作为前端页面展现,由于每个模块的页面是不一样的,因此在设计页面时,要合理的安排,尽量使用户能够很快的熟悉本网站的主要功能,同时需要保持界面的简洁和一致性。4.2.1 前台子系统的设计与实现(1)前台用户注册对于本电子商务网站,未成功注
20、册用户只能查看新闻公告,商品信息等,而不能进入系统使用其他的业务。用户需要办理注册手续,即进入注册页面,按要求输入有效的个人信息,如账户名、真实姓名、身份证号、邮箱等必要信息,如图 10 所示。图 10 用户注册 图 11 用户登录(2)前台用户登录已成功注册用户只有登录系统才能执行其他业务操作,如图 11 所示,因此在登录界面输入账户名和密码,提交信息后,后台进行验证,若与数据库里存储的信息匹配,则可以成功登陆。(3)前台新闻信息模块当进入网站首页,则直接在右边的页面中浏览所有的公告信息,或者点击“首页” ,则回到所有新闻信息显示页面,如图 12 所示。电子商务网站的设计与实现9图 12 前
21、台新闻信息模块(4)前台用户信息模块进入主界面后,当用户点击“会员信息”时,即进入“前台用户信息”子模块,此模块中显示了登陆用户的个人信息,用户可以修改个人信息,包括密码的修改等,如图 13 所示。图 13 前台用户信息模块(5)前台商品信息模块在主界面的左侧导航栏中(如“聚美优品” 、 “商品类别” 、 “品牌商家”等) ,则根据其下拉的选项点击查看不同的商品信息。在对应页面上方的查询输入框中,输入商品名称,则可查询所需的商品信息,如图 14 所示。图 14 前台商品信息模块10(6)前台购物车信息模块当点击商品信息的操作栏中“加入购物车”链接时,则进入购物车信息模块。该页面上显示将加入购物
22、车中的商品信息。当点击“购物车”时,则显示该用户下的购物车中的商品信息。当点击购物车列表里“删除”操作,则可删除购物车中对应的商品。在购物车列表页面的输入框中输入商品名称,显示所需的商品信息,如图 15 所示。图 15 前台购物车信息模块(7)前台订单信息模块当点击商品列表的“生成订单”操作,如图 14 所示。或者点击购物车列表的“生成订单”操作,如图 15 所示时,则出现订单信息填写页面,输入订单信息,并通过验证,即完成订单添加操作;否则添加失败。点击“查看订单”操作,显示该用户下所有的订单信息。点击订单列表中的“删除”操作,则删除对应的商品订单。在订单列表的输入框中输入订单编号,则查询出所
23、需的订单信息,如图 16 所示。图 16 前台商品信息模块(8)前台留言板信息模块点击“留言栏”操作,显示所有的留言信息,如图 17 所示。用户可以添加留言信息,未登录用户添加留言时,出现需要用户登陆提示。电子商务网站的设计与实现11图 17 前台新闻信息模块4.2.2 后台子系统的设计与实现(1)后台管理员登录当管理员输入用户名和密码时,后台进行验证,若验证通过,则进入后台管理界面,若验证错误,则提示登陆失败信息,如图 18 所示。当管理员成功登陆到系统后,系统会跳转到如图 19 所示的后台主界面,从而完成后台的管理。图 18 前台新闻信息模块图 19 后台主界面(2)后台管理员信息模块当管
24、理员成功登陆后,则进入后台管理界面,当点击左侧导航栏中“系统管理”下的“管理员信息”时,则显示管理员的个人信息,当点击“修改”时,则可以修改管理员的用户名和密码,如图 20 所示。图 20 后台管理员信息模块12(3)后台用户管理模块当点击右侧导航栏中“用户管理”下“用户管理” ,则显示所有注册用户信息。管理员可以删除用户,或者根据账户名查找用户,如图 21 所示。图 21 后台用户管理模块(4)后台商品管理模块当点击右侧导航栏中“商品管理”下“添加商品” ,则可填写商品信息,若通过后台验证,则完成添加操作,否则提示添加错误信息。当点击“商品列表” ,则显示所有的商品信息。在输入框中输入商品名
25、,则可以完成按商品名查询操作。当点击“删除”则删除对应的商品,如图 22 所示。图 22 后台商品管理模块(5)后台订单管理模块当点击右侧导航栏中“订单管理”下“订单列表” ,则可显示所有的订单信息。当管理员在输入框中输入订单 ID 或者点击操作栏中的 “删除”时,则完成对应的搜索或删除操作,如图 23 所示。电子商务网站的设计与实现13图 23 后台订单管理模块(6)后台新闻管理模块当点击右侧导航栏中“新闻管理”下“添加新闻” ,则可填写新闻信息,若通过后台验证,则完成添加操作,否则提示添加错误信息。当点击“新闻列表” ,则显示所有的新闻信息。当点击“删除”或“修改” ,则可完成相应操作。在
26、输入框中输入新闻ID,完成新闻查询操作,如图 24 所示。图 24 后台新闻管理模块(7)后台留言板管理模块当点击右侧导航栏中“留言管理”下“留言板管理” ,则显示所有前台用户的留言信息。当点击“删除” ,则可完成删除留言的操作,如图 25 所示。图 25 后台留言板管理模块14第 5 章 系统测试5.1 测试环境软件环境:JDK1.6,Windows 2000 以上的操作系统 8;硬件环境:最低 Intel Pentium II 500 MHz;安装内存(RAM): 512MB(最好 1GB 以上) 。5.2 测试过程当用户在前台登录页面中输入正确的账户名(如“jason” )和密码(如“1
27、23456” )时,则登陆成功,则成功跳转到如图 26 所示页面,否则提示如图 27 登陆错误信息提示。图 26 登录成功 图 27 登陆失败当未注册用户点击“注册”按钮,在右边看到注册界面,用户输入正确的数据,然后点击按钮“添加” ,将提示注册成功,如图 28 所示。反之如果上面的信息只要有一项不符合规定,将提示注册失败。此处给出所有注册信息通过的提示,如图 29 所示,因此可完成用户注册操作。图 28 注册成功提示 图 29 注册提示用户若没有登录,当查看购物车、订单等信息或添加到购物车、生成订单和添加留言等操作时,会出现如图 30 的提示,只有成功登录后,才能操作对应的功能。电子商务网站
28、的设计与实现15图 30 登陆提示当用户在自己的购物车列表中点击生成订单时,若出现如图 31 的页面,则说明该物品已下架,用户可以选择其他物品进行购买。图 31 商品下架提示前台各个功能模块的测试重点大致相同,此处以前台订单管理为例,在生成订单页面输入信息,若显示如图 32 的页面时,则说明输入信息不可为空,当输入的格式不正确时,用户无法完成订单添加的功能,如图 33 所示。只有输入有效的数据才能成功生成订单。图 32 生成订单不为空提示图 33 生成订单格式不正确提示16当登录用户查看订单信息时,当输入订单编号 46 时,若有数据,则会显示如图 34的页面。图 34 前台订单查询页面当输入
29、0 时,因为数据库无此数据,则会出现如图 35 的页面。当用户输入的数据不符合要求时,则会出现如图 41 的页面提示,用户需重新输入。图 35 查询无数据页面当用户删除如图所示的订单编号 44 时,若页面效果如图 36 所示,没有编号为 44的订单信息,则说明删除成功。图 36 订单删除成功之后的页面前台主界面的右下方如图 37 管理员输入正确登录信息,则可进入如图 19 所示的后台管理界面,管理员可在该界面完成各项操作。图 37 后台登陆错误提示页面当管理员成功登录到后台管理模块时,则进入到订单管理模块,当在编号输入框中输入订单编号 33 时,若显示界面如图 38,则说明已经成功查询。电子商
30、务网站的设计与实现17图 38 后台订单查询界面当进入后台订单模块后,删除编号为 36 的订单时,若成功删除,则界面如图 39所示。图 39 后台订单删除操作若出现页面不存在的错误,则显示如图 40 的页面提示,需要检查输入的页面是否正确。若出现服务器端的错误,则会友好的提示如图 41 的页面,错误的原因可能是Java 的空指针异常或数据的格式不正确等 9。图 40 页面找不到提示 图 41 服务器端错误提示18第 6 章 总结与展望6.1 总结顺利如期的完成本次毕业设计给了我很大的信心,让我了解专业知识的同时也对本专业的发展前景充满信心,网上购物系统采用的是 Java 语言开发,它有着许多的
31、优越性,但也存在一定的不足 10,这些不足一方面是自身的知识积累没有达到一定的水平,另一方面是由于时间的问题,没有使系统更加的完善。只有发现问题、面对问题才有可能解决问题,不足和遗憾不会给我打击只会更好的鞭策我前行。6.2 展望经过这次毕业设计和对相关资料的收集,让我清楚的感到随着网络科技的不断发展和网络的广泛应用,使我们的生活离不开它了。网络它以自己的独特的优点征服了我们。在教育越来越受重视的 21 世纪,随着商务类型的不断增加和商务管理要求的不断提高,管理方面的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情。在这样的情况下有一个实用网上购物系统是有其必然性的,如果能做出
32、一个完善的网上购物管理系统就使管理方面的工作量减少很多。在这次的毕业设计中,我学会了很多,也感到自身知识的贫乏,希望在日后的努力中能做出更完善的系统。电子商务网站的设计与实现19参考文献1 李刚.轻量级 Java EE 企业应用实战 (第三版)M.北京:电子工业出版社,20122 李刚.疯狂 Java 讲义 M.北京:电子工业出版社 ,20123 郑阿奇.MySQL 实用教程M.北京:电子工业出版社,20094 张逸,史磊译.Java 设计模式 (第 2 版) M北京:电子工业出版社,20125 孙卫琴.JAVA 开发专家:Java 面向对象编程 M北京:电子工业出版社,20066 王珊,萨师煊.数据库系统概论 (第四版)M.北京:高等教育出版社,20067 王诚梅等.JSP 案例开发集锦M.北京:电子工业出版社,20048 刘瑞新.计算机组装与维护教程M.北京:机械工业出版社,20109 佟伟光.软件测试M.北京:人民邮电出版社,200810 杨学瑜.软件开发过程与项目管理M.北京:电子工业出版社,2007