基于JAVA的网上购书系统.docx

上传人:b****3 文档编号:4982235 上传时间:2022-12-12 格式:DOCX 页数:42 大小:1.85MB
下载 相关 举报
基于JAVA的网上购书系统.docx_第1页
第1页 / 共42页
基于JAVA的网上购书系统.docx_第2页
第2页 / 共42页
基于JAVA的网上购书系统.docx_第3页
第3页 / 共42页
基于JAVA的网上购书系统.docx_第4页
第4页 / 共42页
基于JAVA的网上购书系统.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

基于JAVA的网上购书系统.docx

《基于JAVA的网上购书系统.docx》由会员分享,可在线阅读,更多相关《基于JAVA的网上购书系统.docx(42页珍藏版)》请在冰豆网上搜索。

基于JAVA的网上购书系统.docx

基于JAVA的网上购书系统

摘要

伴随着Internet的蓬勃发展,网络购物中心作为电子商务的一种形式正以其高效、低成本的优势,逐步成为新兴的经营模式和理念,人们已经不再满足用途信息的浏览和发布,而是渴望着能够充分享受网络所带来的更加多的便利。

网络购物正适应了当今社会快节奏地生活,使顾客足不出户便可以方便快捷轻松地选购自己喜欢的商品。

本系统便是尝试用JSP在网络上架构一个动态的电子商务网站,它是在WindowsXP下,以Mysql为数据库开发平台,Tomcat网络信息服务作为应用服务器,采用JSP(JavaServerPages)技术开发的网上购物系统。

他分前台部分和后台部分,前台部分由用户使用,主要包括用户注册,购物车管理,订单管理,个人资料管理,留言板管理等功能;后台部分由管理员使用,主要包括商品管理,处理订单,用户信息管理,链接信息管理等功能。

建立后的网站系统是一个动态、交互式、具有商品提供、系统管理、用户购买等功能的电子商务网站。

 

关键词:

JSP;Mysql;Tomcat;Struts;网上购物系统

 

目录

引言4

第一章网上购书系统概述5

1.1系统开发背景5

1.1.1网上购书的发展5

1.1.2网上购书系统的现状5

1.2系统实现的目标6

1.3系统的开发意义6

第二章应用技术基础理论7

2.1JAVA语言基础知识7

2.1.1JAVA语言简介7

2.1.2JAVA语言特点7

2.2JSP的技术原理8

2.2.1JSP语言8

2.2.2JSP语言特点8

2.3JavaServlets概述9

2.3.1Servlet技术9

2.3.2Servlet的结构10

2.3.3Servlet的接口10

2.4JavaBean简介11

2.5Struts概述11

2.5.1Struts介绍11

2.5.2MVC简介12

2.5.3Struts优缺点13

2.6mysql概述13

2.6.1mysql介绍13

2.6.2mysql的基本命令14

第三章系统环境配置15

3.1服务器配置15

3.2Tomcat安装及配置16

3.3Mysql安装及配置16

第四章系统需求分析及总体设计18

4.1系统需求分析18

4.2总体设计19

4.3各模块具体功能说明19

4.3.1注册功能19

4.3.2登录功能19

4.3.3用户相关信息维护功能20

4.3.4商品浏览20

4.3.5商品交易功能20

第五章数据库设计21

5.1数据库E-R图21

5.2数据实体类结构概要设计22

5.2.1数据库结构设计UserInfo22

5.2.2数据库结构设计Produts23

5.2.3数据库结构设计ProductType23

5.2.4数据库结构设计Transactions23

5.3数据库的初始化及创建24

5.3.1数据库的初始化24

5.3.2数据库的创建26

第六章系统详细设计28

6.1系统整体结构28

6.2用户信息自维护用例图28

6.3系统模块详细设计29

6.3.1用户注册模块29

6.3.2用户登录模块30

6.3.3图书浏览模块31

6.3.4书籍选购及交易模块32

6.3.5用户定单查询浏览事件模块34

6.3.6用户信息修改模块36

6.3.7管理员操作界面37

6.4购物车类图结构39

第七章系统测试及发布及难点分析40

7.1本系统使用的运行及开发平台40

7.2系统测试40

7.2.1系统关键部分测试分析40

7.2.2单元测试分析40

7.2.3测试分析总结及说明41

7.2.4系统的性能分析42

总结43

致谢44

参考文献45

 

引言

目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的生产和日常生活。

网络的诞生和发展,颠覆了传统的信息传播方式,冲破了存在于传统交流方式中时间和空间的种种壁垒,极大地改变了人类从物质到精神、从形式到内容、从生产到生活的各种活动,并且给人类带来了新的机遇和挑战。

在互联网服务业务方面:

电子邮件、搜索引擎、网上银行、在线交易、网络广告、网络新闻、网络游戏等服务业务仍然快速的发展着。

21世纪是网络飞速发展的时代,上网、创建网站已经成为热门话题。

Internet技术得到持续、猛烈的发展,已经成为计算机产业的一个技术热点,越来越多的企业开始关注网络,许多人正在或正准备学习网络知识,进行网络开发或创建自己的网站。

本次毕业设计——基于J2EE的网上购书网站的设计,是在WindowsXP下,以Msql为数据库开发平台,Tomcat网络信息服务作为应用服务器,采用JSP(JavaServerPages)技术开发的。

在本论文中全面详细地介绍了网上购书系统的设计方案,第1章为网上购书系统概述,包括系统的开发背景,网上购物的发展,网上购书系统的现状,系统实现的目标,系统开发的意义。

第2章为JAVA的基础理论,包括JSP的技术原理,Java及JavaServlets概述,JavaBean简介,在JSP中使用XML,mysql概述,Struts概述等。

第3章为系统构架,包括服务器配置,JAVA虚拟机的安装配置,Tomcat环境搭建,mysql的安装配置等;第4章为系统需求分析及总体设计,包括需求分析,系统功能模块设计,对具体功能及用例说明,数据库需求分析;第5章为数据库设计,包括数据库结构设计,用JSP连接数据库;第6章系统详细设计,包括前台和后台两个大的部分,前台部分由用户使用,主要包括用户注册,购物车管理,订单管理,个人资料管理;后台部分由管理员使用,主要包括会员信息管理,主要包括商品管理,处理订单,用户信息管理,链接信息管理等功能;第7章为系统测试及发布及难点分析,包括开发难点和技巧,系统的测试;系统中存在的问题及解决方法;第8章为总结;第9章为致谢;第10章为参考文献。

 

第一章网上购书系统概述

1.1系统开发背景

1.1.1网上购书的发展

近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。

于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。

网上购书系统作为B2B,B2C(BusinesstoCustomer,即企业对消费者),C2C(CustomertoCustomer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。

本文主要考虑的是如何建设B2C的网上购物系统。

网上购书是一种具有交互功能的商业信息系统。

它向用户提供静态和动态两类信息资源。

所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。

网上购书系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。

这种全新的交易方式实现了公司间文档与资金的无纸化交换。

1.1.2网上购书系统的现状

目前在国内PHP与ASP应用最为广泛。

而JSP由于是一种较新的技术,国内采用的较少。

但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。

首先,PHP缺乏规模支持。

其次,缺乏多层结构支持。

对于大负荷站点,解决方法只有一个:

分布计算。

数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开,组成二维阵列。

而PHP则缺乏这种支持。

还有上面提到过的一点,PHP提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。

ASP和JSP则没有以上缺陷,ASP可以通过MicrosoftWindowsd的COM/DCOM获得ActiveX规模支持,通过DCOM和TranscationServer获得结构支持;JSP可以通过SUNJava的JavaClass和EJB获得规模支持,通过EJB/CORBA以及众多厂商的ApplicationServer获得结构支持。

三者中,JSP应该是未来发展的趋势。

世界上一些大的电子商务解决方案提供商都采用JSP/Servlet。

总的来说,ASP,PHP,JSP三者都有相当数量的支持者,而这三者也各有所长,在开发过程中,我们应该根据实际的需要来使用最合适的技术,本系统则采用较新的jsp技术,一方面jsp的安全性和跨平台性比较好,另一方面,我也希望能从开发该系统的过程中,深入学习一下这门编程语言。

1.2系统实现的目标

现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重每一个细小的环节。

这样才能使得在电子交易时避免不必要错误发生。

我们将使用HTML、JSP等技术来编辑网页,并运用JDBC技术把数据库和动态网页相关联。

传统的管理信息系统信息获取方法是由专业文字录入人员将信息输入到管理系统的数据库中,这种方法在数据量不大时有很多的应用场合。

当数据量比较大,并且有较强的专业性时,录入的费用和出错的可能性都相应上升。

本设计在实际应用中的解决方案是建立网站,以及自己的数据库,使得所需商品信息可以及时的保存、更新,可以更好的及时了解商品买卖的情况。

1.3系统的开发意义

Internet的发展,为改变传统的商业运作模式提供了一种技术上的可行性的方案:

利用Internet的技术和协议,建立各种企业内部网Intranet,企业外部网Extranet,通过廉价的通讯手段,将买家与卖家、厂商和合作伙伴紧密结合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。

当今比较流行的网上购物系统国外有“淘宝()”,国内有“当当()”。

它们都是相当优秀的电子商务网站,对其他的网站提供了良好的典范。

设计中可以学习参考他们的思想,了解和熟悉整个网站的开发流程及完整的电子商务网站应有的功能和注意事项。

 

第二章应用技术基础理论

2.1JAVA语言基础知识

2.1.1JAVA语言简介

Java来自于Sun公司的一个叫Green的项目,其原先的目的是为家用消费电子产品开发一个分布式代码系统,这样我们可以把E-mail发给电冰箱、电视机等家用电器,对它们进行控制,和它们进行信息交流。

开始,准备采用C++,但C++太复杂,安全性差,最后基于C++开发了一种新的语言Oak(Java的前身),Oak是一种用于网络的精巧而安全的语言,Sun公司曾以此投标一个交互式电视项目,但结果被SGI打败。

可怜的Oak几乎无家可归,恰巧这时MarkArdreesen开发的Mosaic和Netscape启发了Oak项目组成员,他们用Java编制了HotJava浏览器,得到了Sun公司首席执行官ScottMcNealy的支持,触发了Java进军Internet。

Java的取名也有一则趣闻,有一天,几位Java成员组的会员正在讨论给这个新的语言取什么名字,当时他们正在咖啡馆喝着Java(爪哇)咖啡,有一个人灵机一动说就叫Java怎样,得到了其他人的赞赏,于是,Java这个名字就这样传开了。

2.1.2JAVA语言特点

◆简单的

Java最初是为对家用电器进行集成控制而设计的一种语言,因此它必须简单明了。

◆面向对象的

面向对象可以说是Java最重要的特性,它支持继承、重载、多态等面向对象的特性。

◆健壮的

Java致力于检查程序在编译和运行时的错误。

◆安全的

一方面,在Java语言里,删除了指针和释放内存等C++功能,避免了非法内存操作。

另一方面,通过Java的安全体系架构来确保Java代码的安全性。

◆解释的

Java代码是解释执行的,我们使用Java编译器将Java代码编译成字节码,这是一种中间代码,然后由Java解释器解释执行。

◆与平台无关的

只要有Java运行系统的机器都能执行这种中间代码。

◆多线程的

Java语言的一个重要特性就是在语言级支持多线程的程序设计。

◆动态的

它允许程序动态地装入运行过程中所需要的类。

2.2JSP的技术原理

2.2.1JSP语言

在传统的网页HTML文件(*,htm,*,html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*,jsp)。

JSP页面看上去象标准的HTML和XML页面,并附带有JSP引擎能够处理和抽取的额外元件。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给用户。

程序都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。

它基于强大的Java语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势。

2.2.2JSP语言特点

JSP技术在多个方面加速了动态Web页面的开发:

(1)将内容的生成和显示进行分离

使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。

使用JSP标识或者小脚本来生成页面上的动态内容。

生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。

如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。

(2)强调可重用的组件

绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。

开发人员能够共享和交换执行普通操作的组件。

(3)采用标识简化页面开发

Web页面开发人员不会都是熟悉脚本语言的编程人员。

JavaServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。

标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。

(4)JSP能提供所有Servlets功能

与Servlets相比,JSP能提供所有Servlets功能,它比用Println书写和修改HTML更方便。

可以更明确地进行分工,Web页面设计人员编写HTML,只需留出空间让Servlets程序员插入动态部分即可。

(5)健壮的存储管理和安全性

由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为JavaServlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。

(6)一次编写,各处运行

作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。

随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。

2.3JavaServlets概述

2.3.1Servlet技术

JavaServlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。

Servlet其实和传统的CGI程序和ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用JavaServlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。

许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。

得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合JavaServlet规范,Servlet是完全平台无关且是Web服务器无关的。

2.3.2Servlet的结构

当一个servlet接收来自客户端的调用请求,它接收两个对象:

一个是ServletRequest,另外一个是ServletResponse,这个ServletRequest类概括从客户端到服务器之间的联系,而ServletResponse类概括从servlet返回客户端的联系,

ServletRequestinterface可以获取到这样一些信息如由客户端传送的阐述名称,客户端正在使用的协议,产生请求并且接收请求的服务器远端主机名,它也提供获取数据流的servlet,ServletInputStream,这些数据是客户端引用中使用HTTPPOST和PUT方法递交的,一个ServletRequest的子类可以让servlet获取更多的协议特性数据,例如:

HttpServletRequest包含获取HTTP-specific头部信息的方法,

ServletResponseinterface给出相应客户端的servlet方法,它允许servlet设置内容长度和回应的mime类型,并且提供输出流,ServletOutputStream,通过编写者可以发回相应数据,ServletResponse子类可以给出更多protocol-specific容量的信息。

2.3.3Servlet的接口

Servlet从javax包的httpservlet类扩展,在HttpServlet中加入了一些附加的方法,这些方法可以被协助处理HTTP基本请求的HttpServlet类中的方法service自动地调用。

这些方法有:

◆doGet用来处理HTTP的GET请求。

◆doPost用来处理HTTP的POST请求。

◆doPut用来处理HTTP的PUT请求。

◆doDelete用来处理HTTP的DELETE请求。

◆doHead用来处理HTTP的HEAD请求。

◆doOptions用来处理HTTP的OPTIONS请求。

◆doTrace用来处理HTTP的TRACE请求。

2.4JavaBean简介

JavaBean是一种基于Java的软件组件,JavaBean和Active控件一样,可以通过封装业务逻辑建立一整套可重复利用的对象库。

JSP对于在Web应用中集成JavaBean组件提供了完善的支持,这种支持不仅能缩短开发时间(可以直接利用经过测试和可信任的已有组件),避免重复开发,也为JSP应用带来了更多的可伸缩性。

JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互及数据提取等。

由于Java语言在这些方面所具有的特点和优势,使得基于它的软件JavaBean组件技术倍受人们关注。

它的任务就是:

一次编写,可以在任何地方执行,可以在任何地方重用。

JavaBean组件可以在任何地方重用包括了可以在应用程序、其他组件、文档、Web站点和应用程序构造器工具等多种方案中再利用。

2.5Struts概述

2.5.1Struts介绍

Struts是一种开源软件,它可以帮助开发人员更快更容易的开发Web程序。

Struts所基于的标准技术----例如JavaBeans,servlets和JSP,是大多数开发人员非常熟悉掌握的,在软件开发过程中通过使用标准组建,并用填空式的开发方法,Struts可以帮助程序员减轻每个新项目都重复进行那些既费时又繁琐的工作。

    Struts使用的是Model2体系结构。

ActionServlet负责控制总流程。

另外一个Action类负责存取业务逻辑类。

当ActionServlet类从容器中获取一个请求时,它使用请求的URI(路径)来决定是哪一个Action来处理该请求。

一个Action可以检验输入的合法性、通过业务逻辑层来读取数据库或者其他数据服务中的信息。

要完成这些功能,Action需要用户提交给它处理数据。

为了每一个Action都要处理从请求中提取输入数据的操作,Struts将这些输入数据绑定到JavaBean中。

每一个这样的输入Bean都是Struts中ActionForm类的子类。

ActionServlet通过查看请求的路径就可以决定哪一个ActionForm用来包含输入数据。

这些ActionForm类都应该是org,apache,struts,action,ActionForm的子类。

每一个HTTP请求都必须有一个HTTP响应。

但Struts自己并不生成响应,而是将该请求转发到其他的资源上如JSP页面。

Struts提供一个名为ActionForward的类来将逻辑名保存到每个页面的路径。

当业务逻辑部分已经执行完成后,Action会选择一个ActionForward,并且将它返回给总控Servlet。

总控Servlet会使用在该ActionForward中存储的物理路径来调用对应的页面来完成HTTP响应。

2.5.2MVC简介

MVC模式:

我们开始从传统形式上描述MVC然后讨论它如何能适应网络的应用。

MVC模式三个部分中任一个都是经过检验的,他们分别执行相应的公共模块。

这个模式的主要意图是分成三个相互独立的交互的模块:

模型,视图和控制器。

模型的核心是一个逻辑函数,视图是用来显示用户应用程序传递的数据,而控制器是控制用户的交互和输入的。

三者的通信是通过一个变换装置保持协调同步的

模型-视图-控制器(MVC)(如图2.1):

1、模型(Model)

模型是应用程序的主体部分。

模型表示业务数据,或者业务逻辑,

2、视图(View)

视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。

3、控制器(controller)

控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。

图2.1MVC组件类型的关系和功能

MVC式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性

2.5.3Struts优缺点

优点:

◆有利于构筑稳健的应用

◆减少了代码的重复,易于维护

◆有利于软件工程化管理

缺点:

◆增加了系统结构和实现的复杂性

◆视图与控制器间的过于紧密的连接

◆视图对模型数据的低效率访问

2.6mysql概述

2.6.1mysql介绍

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。

在2008年1月16号被Sun公司收购。

目前MySQL被广泛地应用在Internet上的中小型网站中。

由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

2.6.2mysql的基本命令

----创建数据库

mysql>createdatabase数据库名称

----创建表

mysql>createtable表名(列的名字(id)类型(int(4))primarykey(定义主键)auto_increment(描述自增),……,);

----查看所有数据库

mysql>showdatabases数据库名称;

----使用某个数据库

mysql>usedatabase数据库名称;

----查看所使用数据库下所有的表

mys

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

当前位置:首页 > 法律文书 > 调解书

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

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