资源描述
基于JSP的网上购书系统设计与实现摘要:随着如今互联网与计算机技术的高速发展,各种先进的技术为人们的生活带来了极大的方便,网络应用领域也一天天扩大。在虚拟网络中买卖交易商品,人们越来越来喜欢这种网上购物方式,通过此类网站,人们可以更直观、便捷,足不出户即可在虚拟书店里购书。论文整体从可行性分析、系统分析、系统总体设计、系统详细设计与实现、系统运行和维护等方面展开论述。浏览器/服务端模式是本系统总体开发的模式,以JAVA作为主要开发语言,系统的数据库使用的是,系统的后台程序选用组合而成的当下较为流行的SSH框架,通过各种技术与工具的综合应用实现系统的各种需求。关键词:Java JSP MySQL 网上购书30The Online Bookstores System Based On JSPStudent majoring in computer science and technology Zhang shuoTutor Wei gangAbstract:With the rapid development of the Internet and computer technology, various advanced technologies have brought great convenience to peoples lives, and the network application field has also expanded day by day. People buy and sell trading products in the virtual network, people are more and more like this online shopping method. Through such websites, people can be more intuitive and convenient, and they can purchase books in the virtual bookstore without leaving home.The paper is discussed from the aspects of feasibility analysis, system analysis, system design, system detailed design and implementation, system operation and maintenance. The browser/server mode is the overall development mode of the system. JAVA is the main development language. The database of the system is Mysql. The background program of the system uses the popular SSH framework. Through the comprehensive application of various technologies and tools. Achieve the various needs of the system.Key Words: Java; JSP; MySQL; Online bookstores1 绪论1.1 开发背景伴随着互联网技术的飞速发展,各种互联网技术与服务日趋完善,深切影响着人们生活的方方面面。而物质水平的极大提高,让人们渐渐开始注重精神世界的提升,通过阅读可以丰富人的文化知识储备,开阔个人的眼界。最近几年,互联网技术不断普及,更多的人选择使用计算机或者手机进行网上购物,不用出门就能买到自己想要的一些东西。传统的实体书店销售的方式具有很高的局限性,实体店所能更容纳的客流量是非常有限的,而且能够容纳的书也非常有限,这样会极大地影响书店的运营与发展。而现在随着网上书店的出现,缓解了以前出现的问题,消费者可以根据自己的需求上网选择需要的图书,可以在线进行比较,并且买家和卖家可是实时沟通;而且,网上书店的一个特性是实体书店所不具有的,也是当代人喜欢的一个特性:24小时营业。不管是学习当中还是其他地方,人们想要获取知识都不可避免的需要用到图书。1.2 系统整体概述本文的整个设计过程将会包含如下几项工作:1、可行性分析依照本文所要进行的设计内容,从技术、经济以及法律等多个方面进行可行性分析,同时又结合了系统的实际实施的的一些条件情况,经一系列分析后得到本文所要进行的系统开发设计是非常有必要且可行的。2、系统分析随着电子商务发展的日趋成熟,人们已经习惯了这种足不出户就可以进行商品购买的消费模式。所以为了能够令广大读书爱好者的书籍线上购买需求得到满足,令其能够更加便捷地进行书籍的购买,本文通过使用互联网编程相关技术进行一个网上购书系统的开发。虽然当前有很多成熟的互联网购书平台,但是本文所进行的另一个目就是对自身所学技能进行锻炼,通过一个完整的系统开发流程,提升自身的各方面能力。3、系统总体设计(1) 本文所要进行的设计当中将使用浏览器/服务端模式为整体的基本模式,开发当中使用此种模式拥有如下的几点优势:(a)能够令前后台之间更加分明,一些逻辑关系也能够得到很好的处理,与广大用户的使用习惯更加相符。(b)模块化的设计能够令系统的整体开发分成一个个都部分分别进行,依次来降低系统的开发复杂度,结合面向对象的开发方式,提升代码的复用性,令代码更加易于维护,同时还具有较高的可靠性与可扩展性,满足后续使用当中可能会新加入的一些需求。(2)数据库设计:在本文所要进行的设计当中使用了较为常见的MySQL数据库,保证系统后台数据的读写速度与安全性,同时在系统的后台当时使用功能强大的SSH框架。4、系统详细设计与实现系统的设计与实现阶段进行整个系统前后台各个部分代码的编写。系统的前台当中包含网站的首页以及登录、注册以及商品浏览等页面;系统的后台当中包含的是不同用户角色登录后的页面、图书商品的管理等等;用户交互页面的内容包含一些网页的前端页面等等。本文所要进行的设计的系统页面简洁易懂,系统提示清晰明了,不需要用户具有太多的计算机知识。系统管理员可以对一些书籍、订单、用户等信息进行一定的操作,普通用户可以进行一些商品信息的浏览、购买以及个人信息的操作等。系统权限分明,具有较高的安全性。5、系统测试在系统的设计开发过程当中可避免的会存在着一些漏洞,对开发后的系统进行一定的测试可以最大限度的查找出系统当中存在的缺陷,以增强系统运行的可靠性,在进行系统测试时主要分为三个部分,分别是对系统模块、接口的测试以及最后的验收测试。针对测试过程当中发现了一些问题进行针对性的处理,是系统变得更加完善。6、系统运行和维护当系统开发完毕并成功的通过了测试之后,系统就可以投入正常的运行,随着用户需求的不断变化,将对系统进行及时的维护以满足用户的各种需求,而且在运行的过程当中可能会发现一些原来没有发现的问题,也需要针对这种情况对系统进行一定的维护,使系统更加完善。1.3 系统现状分析在我国的网购群体中,有一半以上的人都选择在网上书店购书。我国网上书店具有以下特点:1、发展太快,对实体书店造成很大冲击 实体书店依然保持着传统的销售模式和书目分类,而网上书店已经打破了这种传统模式,以一种新的形式活跃在大众的视野;由于网上书店的购书的便捷,以及价格的细微差异,给实体书店带来了不小的冲击。2、整体经营水平有所提高 到目前为止,网上书店的在各个方面都有了明显的提升。首先,我国一些网上书店已经能够实现线上线下的结合;其次,网上书店也有了多种多样的支付形式;在物流方面,网上书店的物流质量也越来越高。1.4 系统开发目的与意义本文所要设计的是一个线上的书籍交易平台,相比于线下的实体店销售,本平台拥有如下的几项优势:1、检索便捷系统当中配置了检索功能,用户可以根据其自身的需求进行商业商品的查找,不但可以依据图书的名称、作者等信息进行查找,还可以依据图书的分类和价格信息进行商品的搜寻。2、信息量大在线下的实体店销售当中,店铺所能够容纳的书籍数量是比较有限的,而线上购书的方式就不存在这种限制,而且只要有网络的地方就可以进行图书的购买,使得书籍突破了地域的局限,可以售往全国各地。3、成本低,无区域限定在线图书交易的一个最大的优势就在于商家不需要额外的进行店铺成本的投入,消费者可以在任意时间进行购买,对于消费者所在的地区也没有限制。基于上述的几项优势,线上图书交易才能得以在短时间内迅速发展起来。其目的与意义就是为了让人们更方便购书,更快乐地享受生活。2 相关技术概述2.1 JSP简介JSP技术指的是一种网页技术标准。它以Java编程语言为基础,通过与在Html页面中嵌入Java程序段来实现网页的动态化。该项技术实现了网络逻辑与设计之间的分散,使得应用程序开发变得更加快捷方便。其基本运行过程如下:当用户在网页进行操作的时候,网页向服务端发起请求,服务端根据请求内容返回相应的数据,网页在接收到数据之后生产代码返回到用户端,用户的浏览器根据代码显示出相应的内容。利用嵌入的Java程序段,可以实现对数据的操作,进而实现网页动态显示。JSP不但继承了Java高效快捷的巨大优点,由于其独特的性质,使得平台所具有的无关性风险大大降低,2.2 MySql数据库在程序开发中,通常会引入数据库技术来保证程序中数据的独立性与安全性。而在面对体量庞大的数据时,使用数据库技术还可以有效提升数据的访问速度,从而使得软件的运行效率得到提升。本文所要进行的设计中选用最为常用的关系型数据库,该数据库可以很好地对系统的多线程操作进行支持,运行速度快,数据库连接方式丰富。利用该数据库可以对系统的数据进行有效的存储,而且如果后续需要对系统的功能进行扩展,本数据库也可以进行相应的支持。3 需求分析不管是进行什么类型的系统开发,都不可能无限制的一直开发下去,开发过程综合受到开发时间以及资源的约束。因此在进行系统开发之前应当针对所要开发的内容对其进行一定的可行性分析,这样才能清楚项目需要的是什么。以下会在技术、操作、经济还有法律4个方面分析本文所要设计开发此系统所具有的可行性。3.1 可行性分析3.1.1 技术可行性Java的成熟发展,给程序开发带来了大量优秀的第三方库,此类第三方库已经对一些基础性的功能进行了非常完美的实现,通过使用Java进行编程,使得我们可以更加简便快捷地进行程序开发;在程序的开发中,可以使用集成开发环境对Java程序进行开发;数据库方面使用了当前开源且非常成熟的,该数据库拥有完善的文档信息和活跃的社区,在开发过程当中遇到问题也通过查阅文档等方式解决;ssh框架所具有的高度扩展性与可维护性使得开发过程变得简单。通过上述分析可以看出,本文所要进行的在线购书系统设计在技术上具有较高的可行性,系统开发人员的开发技能熟练,在系统的具体开发实施上的可行性也比较高。本系统当中所用到的各部分间的数据传输情况及其传输协议可以从图1当中看到。图1 系统工作原理图3.1.2 经济可行性网上书店从写需求分析到系统实现,一台配置齐全的普通Windows系统的计算机就能够进行一系列的开发,开发过程当中所用到的相关程序包都可以再网上下载,这个系统所使用的软件及技术是开源的。3.1.3 操作可行性本系统操作简单,页面框架基本上使用统一风格,且页面简单,可根据需要和文字提示即可完成图书的搜索和购买,操作起来是比较简单的,对人们的操作要求不高,只需要了解Windows操作系统,即使不是很了解,在相关人员的指导下也可以很快的学习,而本文所要设计的系统具有较好的可视性,界面友好度高,因此使用起来难度比较低 。3.1.4 法律可行性本文所要设计的系统具有较高的实用性,开发环境工具和数据库的操作都有开源的代码,该系统的开发与普通软件系统的开发有不同的地方,在法律上没有任何侵犯,是可行的。3.2 功能需求分析1、该系统所具有的功能需求有:前台网站:a、一般游客:书店、图书信息浏览,图书搜索查找,注册用户等功能。b、在线用户:普通的网站用户除了拥有一般游客所具有的各项功能之外,还可以进行网站的登录以及商品的购买等多项功能。后台管理:系统的管理员用户可以对图书信息进行添加、删除等操作,同时可以对用户、及其订单信息等进行多种操作。3.3 数据逻辑分析在网站的系统页面当中,如果游客进行用户注册的话,其所填写的注册信息通过类进行处理,在用户名和密码的判断上是通过层,层调用dao层在系统当中添加相应的用户信息。与之相似,系统当中的有关数据库的操作都需要使用到类,需要对数据库进行操作的时候类对层类进行调用,然后再对dao层类进行调用进而完成对相应数据的操作。3.4 性能需求分析3.4.1 系统安全性由于本系统当中会涉及到一些金钱的交易以及用户的个人信息,所以对系统的安全性要求比较高,经过综合分析本系统应当实现如下的几点要求:(1)后台管理,系统各方面信息的更新与操作必须要有相应的管理员用户进行登录之后才能够进行,管理员用户在登录时应该输入正确的用户名和密码,否则无法实现相应的操作。(2)前台网站,除了管理员用户之外,本系统当中还设有一般游客以及在线用户两种用户角色,这两种用户所具有的权限存在一定的差别,在线用户除了拥有一般游客所具有的全部权限之外,还可以进行订单的生成以及管理等操作。3.4.2 数据的完整性(1) 系统当中所涉及到的所有信息都应当具有一定的完整性,这当中包括用户以及商品的信息。(2) 各类信息之间应当保持有一定的相互联系。(3) 相同的一种信息保存在不同的表当中时相应的数据应该具有一致性。3.5 系统用例图分析通过使用用例图一方面可以更加深入地了解系统设计的各项需求,同时也能够为后续的测试工作提供一定的方向,对于整个系统的具体开发实施都有一定的指导。3.5.1 普通用户用例图从系统的安全性角度分析,如果用户没有进行网站登录,就无法进行关于订单以及用户信息的操作。根据对用户登录前后的功能情况进行分析可以绘制出如图2所示的用例图。图2 用例图-普通用户3.5.2 管理员用例图系统的管理员在系统当中拥有的权限是最高的,可以对系统当中的所有信息进行操作。该用户可以实时地对系统所包含的书籍、订单等信息进行更新操作。根据对管理员用户的功能情况进行分析可以绘制出如图3所示的用例图。图3 用例图-管理员4 系统设计在系统的设计当中应当遵循如下的这个思想:1、开发的过程当中使用典型的浏览器 / 服务器模式,其原因在于当前的大多数用户都习惯于此种模式。2、使用Java面向对象的编程方式进行模块化编程,使系统的开发更加灵活。3、做开发的系统应当具有较高的安全性以及运行可靠性,通过对不同的用户分配不同的权限可以实现这种需求。4、系统的操作界面应当简洁易懂。4.1 功能模块设计在系统的使用过程当中各种操作程序应当比较简单,在操作时应当附加相应的提示文字,令用户更加易于上手。各功能如下:1.一般游客:可以进行书店、图书信息浏览,图书搜索查找,注册用户等功能。2.在线用户:普通的网站用户除了拥有一般游客所具有的各项功能之外,还可以进行网站的登录以及商品的购买等多项功能。3.管理用用户:系统的管理员用户可以对图书信息进行添加、删除等操作,同时可以对用户、及其订单信息等进行多种操作。4、除了上述的功能之外,应该就有交互界面以及相应的提示信息,同时应该具有较高的安全性。根据上述分析可以绘制出如图4所示的系统整体功能模块图。图4 系统总体功能模块图系统整体可以分为两大模块,分别是普通用户模块以及管理员用户模块。4.1.1 普通用户功能架构在普通用户没有进行登录时,可以在网站首页对书店以及图书的信息进行浏览,如果用户需要购买图书等操作需要在网站上进行注册并登录。如图5所示:图5 普通用户模块4.1.2 管理员角色功能架构普通用户与管理员用户进行有效权限划分,只有管理员才拥有顶级权限。系统管理员可进行的各项操作如图6所示:图6 管理者模块(1)用户管理:这一模块可以对用户的信息进行添加、删除与修改等多项操作。(2)图书管理:这一模块可以对图书的各类信息进行添加、删除、更新等操作。(3)书籍分类管理:这一模块可以对书籍所具有的分类信息进行添加、查询与修改等一些操作。(4)修改密码:这一模块可以对管理员用户的密码进行修改4.2 业务流程设计系统的页面设计质量能够直接影响到整个系统的质量,用户界面作为系统与之间的直接交流通道,能够对用户体验造成很大的影响。(1)输出设计系统的输出能够为用户相应的提示信息,因此应当进行合理的设计,使用简洁易懂的方式把需要提示的信息进行提示,但不能将一些没有必要的信息都提供给用户。(2)输入设计再进行系统输入设计的时候,设计的首要目的就是提升效率与降低误差。系统的输入接口把用户和系统连接起来,使用户的需求能够到了系统当中,因此应当依据常见的用户需求进行输入格式的设计,提升信息的传递效率。设计当中应该实现如下的几点:降低输入误差;克制输入量;减少不必要的步骤;尽可能快的输入。4.3 数据库设计通过使用数据库可以对系统当中的众多数据进行了管理,在进行数据库的设计是应当根据系统的涉及需求以及用户的使用需求来进行。除此之外还要进行相应的逻辑、概念以及物理结构的设计,以使得设计出的数据库结果能够与系统设计阶段所需求的相一致。通过一系列的分析可以知道,系统需要在数据库当中创建用户、书籍信息等多个数据表。4.3.1 数据库概念结构设计数据库设计部分,需要根据用户的各种需求针对性的对数据库进行设计,在常用的数据库设计方法当中E-R模型法的应用最为广泛。通过对于数据库的一系列需求分析,我们可以相应地绘制出系统数据库的E-R模型图。系统各个部分的实体属性情况如下:(1) 普通用户实体如图7所示的实体结构图,该实体当中包含了用户的各项如用户名、密码等信息。图7 普通用户实体图(2) 管理员登陆信息实体如图8所示的实体结构图,该实体当中包含了管理用用户的各项如ID、密码等信息。图8 管理员登录信息实体图(3) 书籍信息实体如图9所示的实体结构图,包含了图书商品的名称、价格等信息。图9 书籍信息实体图(4) 图书类别实体如图10所示的实体结构图,图书类别当中包含了类别的名称、介绍以及删除操作等。图10 图书类别实体图4.3.2 数据库逻辑结构设计上一节的数据库概念设计内容是对于系统需求的分析结果,通过对设计当中所得到的用户-实体图可以进一步设计出系统当中所需要用到的数据项以及表结构。在进行数据库逻辑结构的设计过程当中,首先应当将E-R图向关系模型进行转换,第一点是要确保图中的每个实体与关系模型能够进行一一对应,而且数据表当中不能存在空主键,而且如果有多对多关系的话应当单独构建关系模型。通过一系列的关系模型转换,得到如下的结果:表1 书籍信息字段类型是否为空描述Idnamecoverpriceintroautherpresspubdatecategory_idintvarcharvarcharfloatvarcharvarcharvarchardateint否否否否否否否否否书的编号书名书的封面价格导言作者出版社出版日期种类编号表2 用户信息字段类型是否为空描述idusernamepasswardintvarcharvarchar否否否用户编号用户名用户密码表3 管理员信息字段类型是否为空描述idusernamepasswardintvarcharvarchar否否否管理员编号管理员名管理员密码表4 书籍种类信息字段类型是否为空描述idnameintvarchar否否书目类型编号数目类型名称5 系统实现在经过了前文当中的一系列分析与设计之后,下一步要进行的应当是系统的具体实施阶段,即为系统程序的编写。根据设计过程当中对于系统功能的分析,确定系统实施的可行性。对数据库的设计得到系统数据的处理方式,这一整套的过程都是为了后续的系统实施而进行的。5.1 管理员功能实现为了系统的运行安全,网站管理员必须要通过如图12所示的网站的管理员登录页进行后台的登录,通过在管理员登录页,输入正确的管理员用户名以及密码,系统对管理员信息验证正确之后,即可成功登录。5.1.1 登陆界面登录界面如图12所示:图12 管理员登录界面对于本系统的管理,其需要在管理员登录页面输入正确的管理员用户名密码才能进行登录操作。点击登录按钮之后,系统会进行用户名与密码的验证,如果用户名与密码不符的话,系统会弹出相应的提示信息提醒用户“用户名或密码错误”,并保持在当前界面不进行跳转。登录过程当中的信息判断与提示功能实现的部分代码如下: 5.1.2 管理员模块(1)功能介绍系统的管理用用户在对系统进行管理时主要分为四个部分分别进行,通过页面的左侧可以对各个部分进行进一步的管理操作。(2)管理员后台管理页面如图13所示:图13 管理员后台管理功能页面5.1.3 图书类目管理(1)功能介绍管理员用户类目管理页进行类目的添加,在输入类目名并成功添加之后系统会自动为该类目分配一个独一无二的id。(2)主要界面实现图14 图书类目添加3、功能实现:管理用添加类目功能实现的核心代码: 5.1.4 图书信息管理(1)功能介绍点击页面左侧的相应功能按钮,可以进行图书添加与管理等操作,操作过程当中按照系统的提示进行信息的填写,同时也可以直接对图书所在的分类进行修改操作。(2)主要界面实现图15 图书信息录入系统当中使用了实现信息选择功能,选择中默认显示的日期是当天,其设置语句为 5.1.5 图书信息列表(1)功能介绍点击页面左侧的“图书管理”下的“图书列表”按钮,可以进行书籍信息的列出,系统在接收到请求之后会调用出相关的信息并对其进行封装,显示在页面当中。(2)主要界面实现图16 图书信息列表页面图书管理功能实现的核心代码: 5.2 用户主要功能5.2.1 系统主页面(1)基本功能介绍网站的首页可以分为四个区域, 上方是主题书的图片和图书类目的导航与数据搜索,左侧是页面展示,下方是固定区域显示的是其他信息,右侧是图书的分类以及促销信息。(2)系统首页界面图17 网站首页5.2.2 用户登陆注册(1)功能介绍未进行登录的游客所能够使用的网站功能比较有限,若要使用更多的功能的话,用户应当进行注册并登录。在用户注册页面按照系统的提示信息进行用户的注册。注册完成后可使用注册时的信息进行网站的登录。(2)登录界面图18 用户登录界面普通用户登录功能实现的核心代码: 5.2.3 图书查询(1)功能介绍在用户需要进行图书的搜索时,在输入框当中输入需要查找的关键词。点击搜索按钮,系统自动调用类的进行查询,然后将查询到的结果在页面当中显示。(2)主要界面实现图19 类别查询界面设计实现搜索功能实现的核心代码: 5.2.4 图书分类查询(1)功能介绍用户在进行图书查找时不但可以使用搜索功能还可以依据图书的分类进行查找,点击所需的图书类别,系统会显示该类别下的所有图书信息。(2)界面与功能实现图20 图书分类查询系统图书分类的部分核心代码: 6 结论使用互联网进行线上的图书销售,拥有很多线下实体店销售所不具有的很多优势,因此这种图书购买方式受到了越来越多人的欢迎。本文所进行的系统设计是一个自我能力验证与锻炼的过程,整个设计过程少不了老师与同学们对我的帮助,尽管系统的基本功能都得以实现,但仍然存在着一些不完善的地方,例如网上支付与发挥等,还需要进一步的设计研究。本文所进行的设计当中分别针对系统的前台与后台进行了设计。系统的前台可以进行图书与店铺信息的浏览,用户注册以及登录等多种功能;系统的后台可以进行各类信息的管理。整个系统界面清晰易懂,操作简单,使用起来较为舒适方便。7 参考文献:1 秦成华. 基于JSP网络购书系统的开发与实现D. 吉林大学: 吉林大学,2008.2 陈义炳,熊阿伟. 基于JSP的网上书店的设计与实现J. 电脑知识与技术,2010(35).3 刘冰. 基于JSP的网上书店系统的研究与设计J. 科技广场,2009(5).4 任虹. 基于JAVA/JSP的网上书店系统J. 光盘技术,2009(11).5 范学英. 基于JSP技术构建网上书店J. 电脑知识与技术(学术交流),2007(8).6 梁瑾,陈婷. 基于JSP小型网上书店的设计J. 电脑学习,2008(3).7 王国栋,杨树勋,刘殿文,陈殿波. JSP在网上书店中的应用J. 青岛科技大学学报(自然科学版),2003(3).8 韩强. 基于JSP的网上书店系统的设计与实现D. 吉林大学: 吉林大学,2010.9 佟彤. 基于JSP技术网上书店的设计与实现D. 吉林大学: 吉林大学,2009.10 马新. 基于JSP的网上书店系统的设计与实现D. 吉林大学: 吉林大学,2006.11 廖彦华, 罗小亮. 基于JSP技术的网上购物系统 J. 电脑知识与技术:学术交流.2007(12).1276-1279.12 李贤华. 基于JSP技术的大型网上购物系统的设计与实现 J. 计算机与现代化.2008(8).82-84,89.致谢:首先诚挚的感谢我的论文指导老师魏刚老师。他在忙碌的教学工作中挤出时间来审查、修改我的论文。老师认真负责有耐心,非常感谢老师对我的指导。感谢我的学校,给了我学习的机会,在学习中,老师从选题指导、论文框架到细节修改,都给予了细致的指导,提出了很多宝贵的意见与建议,老师以其严谨求实的治学态度、高度的敬业精神、兢兢业业、孜孜以求的工作作风和大胆创新的进取精神对我产生重要影响。他渊博的知识、开阔的视野和敏锐的思维给了我深深的启迪。这篇论文是在老师的精心指导和大力支持下才完成的。感谢所有授我以业的老师,没有这些年知识的积淀,我没有这么大的动力和信心完成这篇论文。感恩之余,诚恳地请各位老师对我的论文多加批评指正,使我及时完善论文的不足之处。谨以此致谢最后,我要向百忙之中抽时间对本文进行审阅的各位老师表示衷心的感谢。感谢我的老师和同学对我的关心和帮助。
展开阅读全文