ImageVerifierCode 换一换
格式:DOCX , 页数:42 ,大小:1.85MB ,
资源ID:4982235      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4982235.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于JAVA的网上购书系统.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

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

1、基于JAVA的网上购书系统摘 要 伴随着Internet的蓬勃发展,网络购物中心作为电子商务的一种形式正以其高效、低成本的优势,逐步成为新兴的经营模式和理念,人们已经不再满足用途信息的浏览和发布,而是渴望着能够充分享受网络所带来的更加多的便利。网络购物正适应了当今社会快节奏地生活,使顾客足不出户便可以方便快捷轻松地选购自己喜欢的商品。 本系统便是尝试用JSP在网络上架构一个动态的电子商务网站,它是在Windows XP下,以Mysql为数据库开发平台,Tomcat网络信息服务作为应用服务器,采用JSP(Java Server Pages)技术开发的网上购物系统。他分前台部分和后台部分,前台部分

2、由用户使用,主要包括用户注册,购物车管理,订单管理,个人资料管理,留言板管理等功能;后台部分由管理员使用,主要包括商品管理,处理订单,用户信息管理,链接信息管理等功能。 建立后的网站系统是一个动态、交互式、具有商品提供、系统管理、用户购买等功能的电子商务网站。关键词:JSP;Mysql;Tomcat;Struts;网上购物系统目 录引 言 4第一章 网上购书系统概述 51.1 系统开发背景 51.1.1网上购书的发展 51.1.2网上购书系统的现状 51.2系统实现的目标 61.3系统的开发意义 6第二章 应用技术基础理论 72.1 JAVA语言基础知识 72.1.1 JAVA语言简介 72.

3、1.2 JAVA语言特点 72.2 JSP的技术原理 82.2.1 JSP语言 82.2.2 JSP语言特点 82.3 Java Servlets概述 92.3.1 Servlet 技术 92.3.2 Servlet的结构 102.3.3 Servlet的接口 102.4 JavaBean简介 112.5 Struts概述 112.5.1 Struts介绍 112.5.2 MVC简介 122.5.3 Struts优缺点 132.6 mysql概述 132.6.1 mysql介绍 132.6.2 mysql的基本命令 14第三章 系统环境配置 153.1服务器配置 153.2 Tomcat安装及

4、配置 163.3 Mysql安装及配置 16第四章 系统需求分析及总体设计 184.1 系统需求分析 184.2 总体设计 194.3各模块具体功能说明 194.3.1 注册功能 194.3.2 登录功能 194.3.3 用户相关信息维护功能 204.3.4 商品浏览 204.3.5商品交易功能 20第五章 数据库设计 215.1 数据库E-R图 215.2数据实体类结构概要设计 225.2.1 数据库结构设计UserInfo 225.2.2 数据库结构设计Produts 235.2.3 数据库结构设计ProductType 235.2.4 数据库结构设计Transactions 235.3数

5、据库的初始化及创建 245.3.1数据库的初始化 245.3.2 数据库的创建 26第六章 系统详细设计 286.1系统整体结构 286.2用户信息自维护用例图 286.3系统模块详细设计 296.3.1用户注册模块 296.3.2用户登录模块 306.3.3图书浏览模块 316.3.4书籍选购及交易模块 326.3.5用户定单查询浏览事件模块 346.3.6用户信息修改模块 366.3.7管理员操作界面 376.4购物车类图结构 39第七章 系统测试及发布及难点分析 407.1本系统使用的运行及开发平台 407.2系统测试 407.2.1 系统关键部分测试分析 407.2.2 单元测试分析

6、407.2.3 测试分析总结及说明 417.2.4 系统的性能分析 42总 结 43致 谢 44参 考 文 献 45引 言目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的生产和日常生活。网络的诞生和发展,颠覆了传统的信息传播方式,冲破了存在于传统交流方式中时间和空间的种种壁垒,极大地改变了人类从物质到精神、从形式到内容、从生产到生活的各种活动,并且给人类带来了新的机遇和挑战。在互联网服务业务方面:电子邮件、搜索引擎、网上银行、在线交易、网络广告、网络新闻、网络游戏等服务业务仍然快速的发展着。21世纪是网络飞速发展的时代,上网、创建网站已经成为热门话题。Internet技术得到持

7、续、猛烈的发展,已经成为计算机产业的一个技术热点,越来越多的企业开始关注网络,许多人正在或正准备学习网络知识,进行网络开发或创建自己的网站。本次毕业设计基于J2EE的网上购书网站的设计,是在Windows XP下,以Msql为数据库开发平台,Tomcat网络信息服务作为应用服务器,采用JSP(Java Server Pages)技术开发的。在本论文中全面详细地介绍了网上购书系统的设计方案,第1章为网上购书系统概述,包括系统的开发背景,网上购物的发展,网上购书系统的现状,系统实现的目标,系统开发的意义。第2章为JAVA的基础理论,包括JSP的技术原理,Java及Java Servlets概述,J

8、avaBean简介,在JSP中使用XML,mysql概述,Struts概述等。第3章为系统构架,包括服务器配置,JAVA虚拟机的安装配置,Tomcat环境搭建,mysql的安装配置等;第4章为系统需求分析及总体设计,包括需求分析,系统功能模块设计,对具体功能及用例说明,数据库需求分析;第5章为数据库设计,包括数据库结构设计,用JSP连接数据库;第6章系统详细设计,包括前台和后台两个大的部分,前台部分由用户使用,主要包括用户注册,购物车管理,订单管理,个人资料管理;后台部分由管理员使用,主要包括会员信息管理,主要包括商品管理,处理订单,用户信息管理,链接信息管理等功能;第7章为系统测试及发布及难

9、点分析,包括开发难点和技巧,系统的测试;系统中存在的问题及解决方法;第8章为总结;第9章为致谢;第10章为参考文献。第一章 网上购书系统概述1.1 系统开发背景1.1.1网上购书的发展近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。网上购书系统作为B2B,B2C(Business to Customer,即企业对消费者),C2C(Customer to Customer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的

10、作用。本文主要考虑的是如何建设B2C的网上购物系统。网上购书是一种具有交互功能的商业信息系统。它向用户提供静态和动态两类信息资源。所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。网上购书系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。这种全新的交易方式实现了公司间文档与资金的无纸化交换。1.1.2网上购书系统的现状目前在国内PHP与ASP应用最为广泛。而JSP由于是一种较新的技术,国内采用的较少。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用J

11、SP。首先,PHP缺乏规模支持。其次,缺乏多层结构支持。对于大负荷站点,解决方法只有一个:分布计算。数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开,组成二维阵列。而PHP则缺乏这种支持。还有上面提到过的一点,PHP提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。ASP和JSP则没有以上缺陷,ASP可以通过Microsoft Windowsd的COM/DCOM获得ActiveX规模支持,通过DCOM和Transcation Server获得结构支持;JSP可以通过SUN Java的Java Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Ap

12、plication Server获得结构支持。三者中,JSP应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商都采用JSP/Servlet。总的来说,ASP,PHP,JSP三者都有相当数量的支持者,而这三者也各有所长,在开发过程中,我们应该根据实际的需要来使用最合适的技术,本系统则采用较新的jsp技术,一方面jsp的安全性和跨平台性比较好,另一方面,我也希望能从开发该系统的过程中,深入学习一下这门编程语言。1.2系统实现的目标现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重每一个细小的环节。这样才能使得在电子交易时避免不必要错误发生。我们将使用HTML、JSP等技术来编

13、辑网页,并运用JDBC技术把数据库和动态网页相关联。传统的管理信息系统信息获取方法是由专业文字录入人员将信息输入到管理系统的数据库中,这种方法在数据量不大时有很多的应用场合。当数据量比较大,并且有较强的专业性时,录入的费用和出错的可能性都相应上升。本设计在实际应用中的解决方案是建立网站, 以及自己的数据库,使得所需商品信息可以及时的保存、更新,可以更好的及时了解商品买卖的情况。1.3系统的开发意义Internet的发展,为改变传统的商业运作模式提供了一种技术上的可行性的方案:利用Internet的技术和协议,建立各种企业内部网Intranet,企业外部网Extranet,通过廉价的通讯手段,将

14、买家与卖家、厂商和合作伙伴紧密结合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。当今比较流行的网上购物系统国外有“淘宝()”,国内有“当当()”。它们都是相当优秀的电子商务网站,对其他的网站提供了良好的典范。设计中可以学习参考他们的思想,了解和熟悉整个网站的开发流程及完整的电子商务网站应有的功能和注意事项。第二章 应用技术基础理论2.1 JAVA语言基础知识2.1.1 JAVA语言简介Java来自于Sun公司的一个叫Green的项目,其原先的目的是为家用消费电子产品开发一个分布式代码系统,这样我们可以把E-mail发给电冰箱、电视机等家用电器,对它们进行控制,和

15、它们进行信息交流。开始,准备采用C+,但C+太复杂,安全性差,最后基于C+开发了一种新的语言Oak(Java的前身),Oak是一种用于网络的精巧而安全的语言,Sun公司曾以此投标一个交互式电视项目,但结果被SGI打败。可怜的Oak几乎无家可归,恰巧这时Mark Ardreesen开发的Mosaic和Netscape启发了Oak项目组成员,他们用Java编 制 了HotJava浏 览器,得到了Sun公司首席执行官Scott McNealy的支持,触发了Java进 军Internet。 Java的取名也有一则趣闻,有一天,几 位Java成员组的会员正在讨论给这个新的语言取什么名字,当时他们正在咖啡

16、馆喝着Java(爪哇)咖 啡,有一个人灵机一动说就叫Java怎 样,得到了其他人的赞赏,于是,Java这个名字就这样传开了。2.1.2 JAVA语言特点简单的 Java最初是为对家用电器进行集成控制而设计的一种语言,因此它必须简单明了。面向对象的 面向对象可以说是Java最重要的特性,它支持继承、重载、多态等面向对象的特性。健壮的 Java致力于检查程序在编译和运行时的错误。安全的一方面,在Java语言里,删除了指针和释放内存等C+功能,避免了非法内存操作。另一方面,通过Java的安全体系架构来确保Java代码的安全性。解释的Java代码是解释执行的,我们使用Java编译器将Java代码编译成

17、字节码,这是一种中间代码,然后由Java解释器解释执行。与平台无关的只要有Java运行系统的机器都能执行这种中间代码。多线程的Java语言的一个重要特性就是在语言级支持多线程的程序设计。动态的它允许程序动态地装入运行过程中所需要的类。2.2 JSP的技术原理2.2.1 JSP语言在传统的网页HTML文件(*,htm,*,html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*,jsp)。JSP页面看上去象标准的HTML和XML页面,并附带有JSP引擎能够处理和抽取的额外元件。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行

18、结果以HTML格式返回给用户。程序都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。它基于强大的Java语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势。2.2.2 JSP语言特点JSP技术在多个方面加速了动态Web页面的开发: (1)将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如W

19、eb管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。 (2)强调可重用的组件绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件。 (3)采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行

20、用其他方法更难于编码和耗时的功能。 (4)JSP能提供所有Servlets功能与Servlets相比,JSP能提供所有Servlets功能,它比用Println书写和修改HTML更方便。可以更明确地进行分工,Web页面设计人员编写HTML,只需留出空间让Servlets程序员插入动态部分即可。 (5)健壮的存储管理和安全性由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。 (6)一次编写,各处运行作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运

21、行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。2.3 Java Servlets概述2.3.1 Servlet 技术Java Servlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。Servlet其实和传统的CGI程序和

22、ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用Java Servlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合Java Servlet规范,Servlet是完全平台无关且是Web服务器无关的。2.3.2 Servlet的结构当一个servlet接收来自客户端的调用请求, 它接收两个对象: 一

23、个是ServletRequest,另外一个是ServletResponse, 这个ServletRequest类概括从客户端到服务器之间的联系, 而 ServletResponse类概括从servlet返回客户端的联系, ServletRequest interface 可以获取到这样一些信息如由客户端传送的阐述名称,客户端正在使用的协议, 产生请求并且接收请求的服务器远端主机名, 它也提供获取数据流的servlet, ServletInputStream, 这些数据是客户端引用中使用HTTP POST 和 PUT 方法递交的, 一个ServletRequest的子类可以让 servlet获取

24、更多的协议特性数据, 例如: HttpServletRequest 包含获取 HTTP-specific头部信息的方法, ServletResponse interface 给出相应客户端的servlet方法, 它允许servlet 设置内容长度和回应的mime类型, 并且提供输出流, ServletOutputStream, 通过编写者可以发回相应数据, ServletResponse子类可以给出更多 protocol-specific容量的信息。2.3.3 Servlet的接口Servlet 从javax包的httpservlet类扩展,在HttpServlet中加入了一些附加的方法,这些

25、方法可以被协助处理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.4 JavaBean简介JavaBean是一种基于Java的软件组件,JavaBean和Active控件一样,可以通过封装业务逻辑建立一整套可重复利用的对象库

26、。JSP对于在Web应用中集成JavaBean组件提供了完善的支持,这种支持不仅能缩短开发时间(可以直接利用经过测试和可信任的已有组件),避免重复开发,也为JSP应用带来了更多的可伸缩性。JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互及数据提取等。由于Java语言在这些方面所具有的特点和优势,使得基于它的软件JavaBean组件技术倍受人们关注。它的任务就是:一次编写,可以在任何地方执行,可以在任何地方重用。JavaBean组件可以在任何地方重用包括了可以在应用程序、其他组件、文档、Web站点和应用程序构造器工具等多种方案中再利用。2.5 Struts概述2.5.1 St

27、ruts介绍Struts是一种开源软件,它可以帮助开发人员更快更容易的开发Web程序。Struts所基于的标准技术-例如JavaBeans,servlets和 JSP,是大多数开发人员非常熟悉掌握的, 在软件开发过程中通过使用标准组建, 并用填空式的开发方法, Struts可以帮助程序员减轻每个新项目都重复进行那些既费时又繁琐的工作。 Struts使用的是Model2体系结构。ActionServlet负责控制总流程。另外一个Action类负责存取业务逻辑类。当ActionServlet类从容器中获取一个请求时,它使用请求的URI(路径)来决定是哪一个Action来处理该请求。一个Action

28、可以检验输入的合法性、通过业务逻辑层来读取数据库或者其他数据服务中的信息。要完成这些功能,Action需要用户提交给它处理数据。为了每一个Action都要处理从请求中提取输入数据的操作,Struts将这些输入数据绑定到JavaBean中。每一个这样的输入Bean都是Struts中ActionForm类的子类。ActionServlet通过查看请求的路径就可以决定哪一个ActionForm用来包含输入数据。这些ActionForm类都应该是org,apache,struts,action,ActionForm的子类。每一个HTTP请求都必须有一个HTTP响应。但Struts自己并不生成响应,而是

29、将该请求转发到其他的资源上如JSP页面。Struts提供一个名为ActionForward的类来将逻辑名保存到每个页面的路径。当业务逻辑部分已经执行完成后,Action会选择一个ActionForward,并且将它返回给总控Servlet。总控Servlet会使用在该ActionForward中存储的物理路径来调用对应的页面来完成HTTP响应。2.5.2 MVC简介 MVC模式:我们开始从传统形式上描述MVC然后讨论它如何能适应网络的应用。MVC模式三个部分中任一个都是经过检验的,他们分别执行相应的公共模块。这个模式的主要意图是分成三个相互独立的交互的模块:模型,视图和控制器。模型的核心是一个

30、逻辑函数,视图是用来显示用户应用程序传递的数据,而控制器是控制用户的交互和输入的。 三者的通信是通过一个变换装置保持协调同步的模型-视图-控制器(MVC)(如图2.1):1、模型(Model)模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑,2、视图(View)视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。 3、控制器(controller) 控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。图 2.1 MVC组件类型的关系和功能 MVC式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可

31、复用性2.5.3 Struts优缺点优点:有利于构筑稳健的应用减少了代码的重复,易于维护 有利于软件工程化管理缺点:增加了系统结构和实现的复杂性视图与控制器间的过于紧密的连接视图对模型数据的低效率访问2.6 mysql概述2.6.1 mysql介绍MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。2.6.2 mysql的基本命令-创建数据库mysql create database 数据库名称-创建表mysql create table 表名 (列的名字(id)类型(int(4)primary key(定义主键) auto_increment(描述 自增),,);-查看所有数据库mysql show databases 数据库名称;-使用某个数据库mysql use database 数据库名称;-查看所使用数据库下所有的表mys

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

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