版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
XX工业大学软件开发技术报告课题名称简单网上书店系统的设计与实现学院计算机专业班级计算机科学与技术组长成员摘要21世纪以来,人类经济高速开展,人们的生活发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。为了让消费者网上购物过程变得简单、方便、平安、快捷,网上购物成了一种新型而热门的购物方式。而网上书店的出现,更是满足了那些对书有渴望的朋友们。让他们足不出户便能购得自己心仪的好书。简单网上书店系统是一种具有交互功能的商业信息系统,它在网络上建立一个虚拟的购物商城,使购物过程变得轻松、快捷、方便。简单网上书店系统实际上是一个B/S结构的信息系统,目前开发这种系统用到的主要开发工具有:ASP、JSP、PHP等,用到的数据库主要是一些流行的大型数据库,如Oracle,SQLserver,MYSQL等,我们开发该系统用到的开发工具为JSP,数据库使用的是MYSQL。本系统实现了用户在线注册、定购商品、浏览商品、查询商品信息等操作。关键字:网上书店,B/S,JSP,方便
目录1.绪论 11.1概述 11.1.1简单网上书店系统的构建 1.2开发环境与工具介绍1 1.2.1Myeclipse、tomcat6、mysql 11.2.2html语言 11.2.3jsp技术 12.可行性研究 22.1技术可行性 22.2经济可行性 22.3操作可行性 23.系统需求分析 33.1用户需求分析 33.2系统E-R图 34.系统设计 44.1数据库逻辑结构设计 44.1.1逻辑设计标准 4.1.2E-R图与关系模式的转换4.1.3逻辑结构表4.2功能模块图及分模块功能描述 44.2.1系统的功能模块图 44.2.2系统功能模块简介 45.系统实施 55.1建立数据库 55.2数据库连接 55.3主要模块实施 55.3.1登录模块的开发 55.3.2注册模块的开发 55.3.3顾客浏览图书模块的开发 55.3.4搜索图书模块的开发 55.3.5图书分类显示模块的开发 55.3.6购物车管理模块的开发 55.3.7生成订单模块的开发 55.3.8订单管理模块的开发 55.3.9图书收藏模块的开发 55.3.10用户信息模块模块的开发 55.4系统测试 55.4.1软件测试的对象 55.4.2软件测试的结果 56.系统说明 66.1开发环境 66.2系统安装与配置 6总结 7参考文献 8绪论1.1概述简单网上书店系统实际上是一个B/S结构的信息系统,由java语言实现。在JDK环境下,我们采用Myclipse开发软件,软件设计为MVC结构。模型层是进行数据库访问,并且封装对象,这一层中也存放在访问数据库取出信息封装成对象的类也就是实体类的信息,我们使用JDBC实现这一层的功能;控制层用来控制请求的响应和调用写好的相应的访问数据库的方法,我们现在用Servlet来实现这一层,并使用反射机制按照当前请求选择不同的业务;表现层用来显示数据和收集必要数据,我们现在用JSP来实现这一层,且通过JavaScript验证收集的数据是否正确。数据库和效劳器我们使用的是Mysql与Tomcat。1.2开发环境与工具介绍Myeclipse:企业级工作平台〔MyEclipseEnterpriseWorkbench,简称MyEclipse〕利用它我们可以在数据库和JavaEE的开发、发布以及应用程序效劳器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。Tomcat6.0:Tomcat是一个轻量级应用效劳器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache效劳器,可利用它响应对HTML页面的访问请求。实际上Tomcat局部是Apache效劳器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行。Mysql:MySQL是一个小型关系型数据库管理系统,MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。1.2.1HTML简介HTML〔HypertextMarkupLanguage〕,是用于描述网页文档的一种标记语言。HTML是一种标准,一种标准,它通过标记符号来标记要显示的网页中的各个局部。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容〔如:文字如何处理,画面如何安排,图片如何显示等〕。浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误,且不停止其解释执行过程,编制者只能通过显示效果来分析出错原因和出错部位。但需要注意的是,对于不同的浏览器,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果。HTML之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接〞点。所谓超级链接,就是一种URL指针,通过激活〔点击〕它,可使浏览器方便地获取新的网页。这也是HTML获得广泛应用的最重要的原因之一。1.2.2JSP技术JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于效劳端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示别离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web效劳器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JavaServlet一样,是在效劳器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP的1.0标准的最后版本是1999年9月推出的,12月又推出了1.1标准。目前较新的是JSP1.2标准,JSP2.0标准的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。效劳器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JavaServlet是JSP的技术根底,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且平安可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的效劳器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的效劳器端言。可行性研究2.1技术可行性本系统仅需要一台装有Office软件的计算机即可,对机器本身没有太高的要求,一般当前学校或个人电脑完全可满足要求。对于软件技术要求,现在的程序设计语言已非常成熟,要运用HTML样式,图形图象制作工具来制作生动活泼的网页及美观的图形文件或动画文件。2.2经济可行性由于本系统是为学生学习使用的系统,装上该应用软件,即可使用系统,系统本钱主要集中在系统软件的开发上,当系统投入运行后可以为学校节约大量的人力,物力。所带来的效益远远大于系统软件的开发本钱。在经济上完全可行。2.3操作可行性界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、标准、可靠;统计准确;制表灵活;适应力强;容易扩充。3.系统需求分析3.1用户需求分析3.1.1用户需求 能够方便的浏览查询图书,方便的购置图书。3.1.2系统功能需求 根据用户对网上购物系统的需求,我们设计了此方案,更方便、快捷的满足用户的购书需求。3.2系统E-R图密码密码用户名管理员管理信息销售管理用户管理查询账户管理4.系统设计4.1数据库逻辑结构设计逻辑结构设计阶段的任务是将概念结构设计阶段所得到的概念模型转换为具体DBMS所能支持的数据模型〔即逻辑结构〕,并对其进行优化。4.1.1逻辑设计标准数据库逻辑设计就是将E-R图转换成关系模型的过程,即将所有实体和关系转换成一系列的关系模式,转换过程中常见规那么有:(1)一个实体型转换成一个关系模式。(2)一个一对一的关系模型可转换成一个独立的关系模式,也可与任意一端对应的关系模式合并。(3)一个一对多的联系可以转换成一个独立的关系模式,也可与多的那一端对应的关系模式合并。(4)一个多对多的联系可以转换成一个关系模式。4.1.2E-R图与关系模式的转换图书类:〔Id,图书名,ISBN号,价格,图片路径,描述,图书分类号,库存量,折扣,出版社号,作者名〕用户类: 〔Id,用户名,密码,电子邮箱,性别,帐户余额,积分,注册时间,〕订单类:〔Id,用户号,价格,收货信息号,支付方式号,订单状态号,订单日期,送货方式号〕出版社类:〔Id,出版社名称,出版社地址,出版社〕支付方式类:〔Id,支付方式名〕送货方式类: 〔Id,送货方式名〕用户等级类:〔Id,等级名称,等级最低积分,等级最高积分,等级折扣〕订单状态类:〔Id,订单状态名〕订单详细类:〔Id,对应订单号,图书号,购置数量〕用户收藏类:〔Id,图书号,用户号〕收货信息表: 〔Id,用户号,收货地址,,收件人,收件人姓名〕评论类:〔Id,评论内容,图书号,用户号,评论日期〕图书分类表:〔Id,图书分类名〕4.1.3逻辑结构表本系统采用MySQL作为数据库。在数据库中建立名为bookshop的数据库,其中包含有。下面是每个数据库表中的属性,包括属性列的名称、数据类型、长度、是否为空和备注说明等内容。图书信息表:名类型长度允许为空?备注idbigint20否主键namevarchar20否pricedouble0否amountint11是discountdouble0是picvarchar50是press_idint11否外键descriptionvarchar1000是图书分类表:名类型长度允许为空?备注idint11否主键namevarchar20否评论表:名类型长度允许为空?备注idbigint20否主键contentVarchar200否book_idbigint20否外键user_idbigint20否外键comment_datedate0是收货地址表:名类型长度允许为空?备注idbigint20否主键user_idbigint20否外键addressvarchar100否postvarchar6否phonevarchar11否receivervarchar20否送货方式表:名类型长度允许为空?备注idint11否主键namevarchar30否收藏表:名类型长度允许为空?备注idbigint20否主键book_idbigint20否外键user_idbigint20否外键点单表:名类型长度允许为空?备注idbigint20否主键user_idbigint20否外键pricedouble0否contact_idbigint20否外键payment_idint11否外键status_idint11否外键order_datedate0否delivery_idint11否外键点单详细表:名类型长度允许为空?备注idbigint20否主键order_idbigint20否外键book_idbigint20否外键amountint11否点单状态表:名类型长度允许为空?备注idint11否主键namevarchar10否付款方式表:名类型长度允许为空?备注idint11否主键namevarchar10否出版社信息表:名类型长度允许为空?备注idint11否主键namevarchar30否addressvarchar40否phonevarchar11否用户信息表:名类型长度允许为空?备注idbigint20否主键usernamevarchar20否passwordvarchar12否emailvarchar20是sexvarchar1否balancedouble0是scoreint11否regist_datedate0是用户等级表:名类型长度允许为空?备注idint11否主键namevarchar10否score_lowint11否score_highint11否discountdouble0是4.2功能模块图及分模块功能描述4.2.1系统的功能模块图 网上商店用户管理员网上商店用户管理员注册会员网上购物用户管理仓库管理销售管理商品管理商品搜索系统采用了敏捷开发的思想,对整个系统分成了3个大模块:前台交易模块、数据库及持久层的设计、后台管理模块。各个模块又进行了一步的细分,如前台交易模块又分为查询、购置、收藏等;数据库采用了Mysql,使得系统具有易用性、个性化、跨平台等特点;同时又保证交易数据的平安、稳定、快速和完整;使其运行得高速、平安、稳定。5.系统实施5.1建立数据库在Mysql中创立数据库:Createdatabaseebookshop;5.2数据库连接将连接数据库的代码封装在类中:publicstaticConnectiongetConnection(){ Connectionconn=null; StringdriverClassName="com.mysql.jdbc.Driver"; Stringurl="jdbc:mysql://localhost:3306/ebookshop"; Stringuser=用户名; Stringpassword=密码; try{ Class.forName(driverClassName); conn=DriverManager.getConnection(url,user,password); }catch(Exceptione){ e.printStackTrace(); } returnconn; } publicstaticvoidclose(Connectionconn){ if(conn!=null){ try{ conn.close(); }catch(SQLExceptione){ e.printStackTrace(); } } }5.3主要模块实施5.3.1登录模块的开发 登录模块主要是实现用户的登录操作。登录模块的外部逻辑放在loginform.jsp中,整个流程如下所示:5.3.2注册模块 该模块主要提供一般读者的注册操作,在注册操作过程中涉及到用户名重复的判断,该功能由regist.jsp提供。在录入用户注册信息时,对用户填写的信息要进行一些判断,这些判断的原理都是利用一些正那么表达式来对用户输入的信息进行过滤5.3.3顾客浏览图书模块该模块的实现较为简单,主要是通过调用jdbc查询数据库获取ResultSet对象,之后遍历这个对象,将需要的字段显示到页面即可。对数据库的查询也非常简单,主要的原理就是通过一条如下所示的Sql语句来实现查询操作,需要注意的是用limit实现分页功能。5.3.4搜索图书模块上面两图分别为按图书、作者来查询。该模块提供三种搜索方法使读者能够灵活的搜索到自己想要的书籍,分别是按书名搜索、按作者名搜索、按出版社搜索,同时在还提供了模糊匹配的功能。该模块通过询数据库获取ResultSet对象,之后遍历这个对象,在搜索页面显示即可。SQL语句:select*fromt_bookwheretypelike%search%limit(1)*10,10;如上所示,搜索的条件type可以是图书的名称或者图书名称的一局部,也可以是图书的出版社或者作者名,这些搜索都实现了模糊匹配。5.3.5图书分类显示模块的开发图书分类显示功能,根据图书的sortid找出同一类别的图书,显示出来。5.3.6购物车管理模块的开发购物车管理主要实现读者添加图书到购物车或者是将图书从购物车中删除,购物车同时实现了图书总价的统计功能。用户可以直接修改购物车中已有图书的数量,确定修改后经一系列操作仍然跳转到当前页面,并将图书总价显示出来。5.3.7生成订单模块的开发5.3.8订单管理模块的开发5.3.9图书收藏模块的开发5.3.10用户信息模块的开发5.4系统测试5.4.1软件测试的对象为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、确认测试和系统测试。〔1〕单元测试单元测试集中在检查软件设计的最小单位—模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《声和超声》课件
- 杭州市住宅小区前期物业服务合同模板
- 工程造价专用合同条款
- 《氨基丁酸养生的》课件
- 2025年陕西货运从业资格证考试模拟试题
- 2025年博尔塔拉货运从业资格证考试技巧
- 2025年拉萨货运从业资格证模拟考试题下载
- 2025年东莞货运从业资格考试
- 《民事案例实例分析》课件
- 文化产业招投标合同管理要点
- 流行性感冒健康宣教
- 理解生活满意度的标准和评估方法
- 中医五则诊断法在临床中的应用与误区
- 《初中语文教学中的跨学科融合与创新实践》
- 《金子美玲儿童诗》课件
- 瓯北城市新区污水管网修复工程质量评估报告(样表)
- (人教版新目标)八年级英语上册全册各单元知识点期末总复习讲解教学课件
- 无障碍医用电梯人性化改造
- 房地产公司组织结构部门职能岗位职责大全
- 苏教版四年级上册数学期末测试卷-及答案
- 工程地质调查规范
评论
0/150
提交评论