基于J2EE的网上书店系统的设计与实现Word文档格式.docx
- 文档编号:21788229
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:22
- 大小:568.30KB
基于J2EE的网上书店系统的设计与实现Word文档格式.docx
《基于J2EE的网上书店系统的设计与实现Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于J2EE的网上书店系统的设计与实现Word文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
OrderManagement
绪论
随着全球经济一体化的逐步发展和深入,网上书店已成为传统书店必不可少的经营策略之一。
目前,网上书店在国际互联网上可以实现的业务功能已经多样化,可以说,传统书店所具备的功能几乎都可以在互联网上进行电子化的高效动作。
虽然传统书店规模有所不同,随着网上交易的开展,都将有力地改变企业的发展空间,会对企业的竞争力产生不可忽视的影响。
网上书店为人们提供了更广阔的环境:
人们不受时间的限制,不受空间的限制,不受传统购书的诸多限制,可以随时随地在网上交易。
在网上,这个世界将会变得很小,一个商家可以面对全球的消费者,而一个消费者可以在全球的任何一家书店购物;
网上书店提供了更快速的流通和低廉的价格:
网上书店减少了商品流通的中间环节,节省了大量的开支,从而也大大降低了商品流通和交易的成本。
网上书店更符合时代的要求,具有长远的社会效益和经济效益。
西方国家网上书店起步较早,现今已较为成熟。
首先从技术上来讲,国外对于网上书店的开发有一套完整的开发流程规范,无论从安全性还是系统的扩展性都有良好的应对措施;
从功能上来讲,能满足在网上购书所涉及到的所有合理的功能,包括畅销书、在线书籍、书评社区和积分商场等。
世界上第一家网上书店是1991年在美国联机公司(AOL)在网络上建立的“阅读美国”书店。
1994年贝佐斯在西雅图成立的亚马逊网上书店,如今已成为全球最大网上书店,控制着美国80%的网上图书销售市场。
而国内的网上书店起步较迟,虽然目前已初具规模,但是由于信息服务不完善、低质量,查询、分类形式单一,注重图书数量的丰富而忽略图书及其相关知识和信息的提供、介绍,并且经营模式未走出传统书店模式,从而导致国内网上书店系统与国外相比有一定的差距[1]。
现在的网上书店系统大多数是由大型书店商家按照自身需求开发而成,没有达到统一及成熟的程度。
因此,在运用方面还有广大的研究空间。
未来网上书店系统将会变得更加专业化、更加高质量、更有特色,并且系统将逐渐成熟,达到统一的标准,更具有安全性的支付、可扩展性的功能和可维护性,系统的使用会易于操作,为用户提供网上购书的便利享受。
系统的网络管理也将会随着更加自动化。
实现开发平台标准化,业务流程自动化和应用系统集成化。
本论文主要研究一款网上书店系统的设计与实现。
该系统主要实现网上购买书籍的基本业务处理,主要包括会员管理、商品展示管理、购物车管理、订单管理、商品管理、公告管理等功能。
本文的各个章节的主要研究内容如下:
第1章针对该系统的可行性分析与需求分析进行了详细的介绍,以减少项目开发的盲目性,保证系统开发建立在更科学的基础上。
第2章针对该系统的主要实现技术与开发工具进行详细的介绍。
第3章对系统设计进行详细的说明,包括系统概要设计和系统详细设计。
第4章对系统实现进行详细的说明,按照各个模块具有针对性的说明。
第5章对系统测试进行详细的介绍,以保证系统能够正常的运行。
1实现技术与开发工具
系统以Myeclipse8.5为应用程序开发工具,选择Java为开发语言,采用Mysql建立和维护后台数据库。
以下对系统的实现技术与开发工具进行了详细说明。
1.1Java
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。
Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。
另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。
特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。
Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。
Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。
特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库[2]。
1.2J2EE
J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
J2EE是Java2平台企业版(Java2Platform,EnterpriseEdition)J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共同的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境。
目前,Java2平台有3个版本,它们是适用于小型设备和智能卡的Java2平台Micro版(Java2PlatformMicroEdition,J2ME)、适用于桌面系统的Java2平台标准版(Java2PlatformStandardEdition,J2SE)、适用于创建服务器应用程序和服务的Java2平台企业版(Java2PlatformEnterpriseEdition,J2EE)。
J2EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。
J2EE技术的基础就是核心Java平台或Java2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如“编写一次、随处运行”的特性、方便存取数据库的JDBCAPI、CORBA技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对EJB(EnterpriseJavaBeans)、JavaServletsAPI、JSP(JavaServerPages)以及XML技术的全面支持。
其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构[3]。
J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。
通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持EnterpriseJavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。
1.3Spring
Spring也表示是一个开源框架,是为了解决企业应用程序开发复杂性由RodJohnson创建的。
框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
Sping的优点包括低侵入式设计,代码污染极低,独立于各种应用服务器,Spring的DI机制降低了业务对象替换的复杂性,Spring并不完全依赖于Spring,开发者可自由选用Spring框架的部分或全部[4]。
1.4MyEclipse
本项目代码开发选用的IDE工具是MyEclipse。
MyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。
1.5MySQL
本项目开发选用的数据库软件是MySQL。
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
在2008年1月16号被Sun公司收购。
而2009年,SUN又被Oracle收购。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。
这样就增加了速度并提高了灵活性。
MySQL的SQL“结构化查询语言”。
SQL是用于访问数据库的最常用标准化语言。
MySQL软件采用了GPL(GNU通用公共许可证)。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
为多种编程语言提供了API。
这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
支持多线程,充分利用CPU资源。
优化的SQL查询算法,有效地提高查询速度。
既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
提供用于管理、检查、优化数据库操作的管理工具。
可以处理拥有上千万条记录的大型数据库。
支持多种存储引擎。
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
1.6Tomcat
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
目前最新版本是7.0。
Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;
而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为:
当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
目前Tomcat最新版本为7.0.27Released。
2可行性分析与需求分析
本章主要对系统的可行性分析与需求分析进行详细的介绍。
在项目开发前,对系统开发的必要性和可能性进行分析和论证,以减少项目开发的盲目性,保证系统开发建立在更科学的基础上[5]。
2.1可行性分析
针对本系统以全面、系统的分析为主要方法,经济效益为核心,围绕影响项目的各种因素,运用大量的数据资料论证拟建项目是否可行。
2.1.1技术可行性
本系统采用MyEclipse集成开发工具作为该系统前端应用程序的开发,以JAVA做为主要开发语言和MySQL进行后台数据库的建立和维护。
主要可行性如下:
(1)MyEclipse集成了很多插件和功能,能进行页面的可视化设计和和后台代码的规范性。
(2)MySQL是一个小型关系型数据库管理系统,操作简单,上手简单。
(3)Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,具有卓越的通用性、高效性、平台移植性和安全性。
所以从技术来上说,该系统的设计和完成是可行的。
2.1.2经济可行性
Java是一种免费的开源语言,采用的数据库MySQL也是免费的,所用的开发工具MyEclipse在网上也可以下载的,而对于相关的资料,可以从图书馆以及网络平台获得。
因而,该系统在经济上是可行的。
2.1.3操作可行性
该系统操作简易,用户购书不需要了解整个书店的工作流程,只需要按照提示一步步操作即可完成购书等活动。
而对于系统管理员,该系统设计时遵循简单、直观和合理,能和用户进行很好的交互。
因而,该系统在操作上是可行的。
2.2需求分析
本节主要对于系统的需求分析进行了详细的介绍,主要包括功能需求和性能需求。
对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果[6]。
2.2.1功能需求
本系统是一个网上书店系统,实现其基本的网上购书功能,因此应该使本系统的操作尽量简单使它能够吸引更多的在线顾客。
通过对当当网,卓越网等网上书店的认识和分析,我对网上书店有了基本的了解,主要功能需求如下:
(1)用户
本系统的用户包括后台管理员和会员用户,即需要对用户进行添加,并且具有修改、删除和查询的功能。
(2)书籍
本系统可以对书籍信息进行添加、修改、删除,并且书籍是分类别的,所以对于书籍的类别也可以进行添加、修改和删除。
(3)购物车
对于本系统应提供了购物车功能,可以让顾客像在超市中购物一样,将想要购买的物品放入购物车,如果顾客看中了其他物品不想买刚才的物品时可以从购物车将物品清出,添加新物品。
通过购物车给顾客提供最大的选择空间。
(4)公告
本系统还具有公告功能,提供最新的系统信息和新书资讯,实现的功能包括对于公告信息的添加、修改、删除和展示。
(5)订单
当购买书籍后会生成相应的订单,实现的功能包括订单的生成、修改和订单的删除。
2.2.2性能需求
由于该系统实现的是网上购买书籍的完整流程,既包括了对大量书籍和大量会员用户的管理,又包括了对大数据量的书籍的查询,因此,本系统在性能上需要满足一下几点:
(1)整个系统长时间处于稳定的运行状态。
(2)系统正常运行时,保证大量用户的并发访问。
(3)系统在满足数据的正确性的前提下,搜索的时间最大不超过10秒。
3系统设计
本章主要根据系统的需求分析和开发时的实际情况进行系统设计,包括概要设计和详细设计。
3.1系统概要设计
概要设计是将软件系统需求转换为未来系统的设计,为了逐步开发强壮的系统构架做铺垫,使设计适合于实施环境,为提高性能而进行设计,使整个软件开发工作可以协调有序地进行[7]。
3.1.1系统总体结构
通过对当当网,卓越网等网上书店的认识和分析,再根据需求分析,对系统模块进行了设计。
本系统的功能可以分为以下几个模块[8]:
(1)用户管理模块
用户管理模块又包括了管理员模块和会员用户模块。
管理员模块要实现登录、添加、修改、删除和查询功能。
会员用户模块要实现会员登录、注册和会员的添加、修改、删除、和查询等基本功能。
(2)商品管理模块
商品管理模块由商品展示模块、商品类别管理模块、商品信息模块三个子模块组成。
商品展示模块要实现对商品的查询,其中又包括热门书籍查询、畅销书籍查询、推荐书籍查询、按书籍类别查询、书籍排行榜查询和自定义书籍查询。
商品类别管理模块要实现对商品类别的添加、修改、查询和删除功能。
商品信息模块实现商品基本信息的添加、修改、查询和删除。
(3)购物车管理模块
购物车管理模块要实现商品加入购物车、移除购物车、清空购物车。
(4)订单管理模块
订单管理模块包括会员用户对订单的管理和管理员对订单的管理。
会员用户管理订单实现提交订单、修改订单、删除订单和查看订单,管理员管理订单实现查看订单和删除订单。
(5)公告管理模块
公告管理模块实现对公告的添加、修改、查询和删除。
系统功能总体结构如图3-1所示。
图3-1系统功能总体结构图
3.1.2系统流程设计
本系统的流程是:
首先进入系统时,显示的是前台的主界面,主界面展示了一些热门和畅销的书籍,会员登录框以及公告。
当用户输入正确的会员名和密码后,点击登录,系统会刷新页面,并且登录框消失变成相应会员的信息。
然后已经登录的会员可以添加书籍到购物车、修改个人资料、下订单等。
在每个前台页面下面都有个“后台管理”的超链接,点击后会跳转到后台管理登录页面,输入管理员的帐号后就会跳转到后台管理页面,就可以针对商品、订单、会员、系统等信息进行数据管理。
3.2系统详细设计
本节对系统的数据库和各个模块的详细设计进行了说明。
3.2.1用户管理模块的设计
用户管理模块包括会员管理和管理员管理。
(1)会员管理
会员管理包括前台用户注册、登录和后台管理员对会员的管理操作。
会员信息包括会员编号、用户名、用户密码、用户昵称、用户电话、用户地址和Email。
针对用户注册能够对用户名、密码进行简单验证;
能够对电子邮箱、Email进行有效性验证。
如果所填的信息不符合要求,将会出现提示框,提示格式不对;
能够防止利用页面刷新重复注册,以及已经注册的用户不能重复注册。
用户登录时,如果输入的用户名和密码错,将会跳转到一个公共的错误页面。
而后台管理员能对注册的会员用户进行增加、删除、修改,也会对数据进行验证。
(2)管理员管理
管理员管理主要实现对管理员的基本信息进行添加、修改、删除、查询、管理员登录和修改密码。
管理员信息包括管理员编号、用户名、密码、昵称和联系电话。
对管理员信息进行操作时都要进行数据格式验证,如果验证失败将弹出提示框,并且操作终止。
3.2.2商品管理模块的设计
商品管理模块主要由商品展示模块、商品类别管理模块、商品信息模块三个子模块组成[9]。
(1)商品展示模块
商品展示模块主要是针对书籍的各个条件进行查询展示。
主要包括热门书籍展示、畅销书籍展示、新书上市展示、排行榜展示、按书籍类别展示、用户自定义条件展示,并显示商品详情,提供购买链接。
用户自定义展示即是根据用户输入的关键词进行模糊查询。
(2)商品类别管理模块
商品类别管理模块主要是对商品类别进行管理,商品类别信息主要包括类别名称、类别简介和类别编号。
实现对商品类别信息的添加、修改、删除和查询。
(3)商品信息模块
商品信息模块主要是针对商品的基本信息进行管理,商品的基本信息包括书籍名称、书籍价格、书籍作者、出版社、简介、封面、出版日期、书籍类别和书籍编号。
实现对商品基本信息的添加、修改、删除和查询,增添商品时候可以上传图片。
其中与商品类别有级联关系,书籍的类别为商品类别的主键,书籍要保证一致性。
3.2.3购物车管理模块的设计
购物车管理模块是针对购物车进行管理。
欲购买商品可以增添到购物车;
也可以从购物车退回商品,清空购物车;
对于同一件商品的多次购买只能在原来的商品上增添数量,还可以修改购物车中某个商品的数量,统计商品总金额。
3.2.4订单管理模块的设
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 J2EE 网上 书店 系统 设计 实现