基于web的二手物品交易平台设计与开发说明书.doc_第1页
基于web的二手物品交易平台设计与开发说明书.doc_第2页
基于web的二手物品交易平台设计与开发说明书.doc_第3页
基于web的二手物品交易平台设计与开发说明书.doc_第4页
基于web的二手物品交易平台设计与开发说明书.doc_第5页
已阅读5页,还剩88页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

随着互联网技术的迅猛发展,校园信息一体化过程加快,学生网民的数量 越来越多,而安全,快捷,方便的校园局域网为学生之间的交易提供了良好的 网络支持。由于教育的阶段性,大量的二手书籍及二手物品并没有丧失或完全 丧失其使用价值,每年毕业生的到来为校园二手交易市场提供了丰富的内容。 为了使交易信息更全面,交易过程更频繁,交易方式更为便捷,尝试开发常州 大学城大学生二手物品交易平台这套系统,用意在于为大学生的交易提供一个 良好的平台,同时唤起并树立节约意识,提倡资源循环利用,共创绿色校园。 本文根据我院经济管理系社团物品交易模式,并通过分析、调查、走访, 完成了一个基于 WEB 的常州大学城大学生二手物品交易平台的设计与开发。本 文在系统架构上采用当前比较流行的 B/S 结构,应用 MVC 三层设计开发模式, 通过 JSP、JavaBean、Servlet 及 Struts 技术和 Microsoft SQL Server 2005 进行开发设计,提供包括商品信息管理,购物车管理、在线交流、留言回复、 动态信息展示等功能服务。在整个系统设计中充分利用了模块化的设计思想和 开发方法。本系统实用性较强、扩展灵活、操作方便、安全稳定。 关键字:MVC B/S WEB 二手物品交易平台 毕业设计 (论文 )外文摘要 TitleTitle: Based on WEB Changzhou University City University Second-hand Exchange Design and Development AbstractAbstract: With the rapid development of internet technology, campus information integration quickens its steps. More and more students begin to use internet. Campus LAN which is safety and convenient benefits the transaction between students. Many second-hand materials have not lost its service value completely because of the stage of education. Every year students who are going to graduate offer a large amount of materials for secondary market on campus. To make the transactions more fully, the process more frequently and convenient, I attempt to develop the second- hand exchange system in Changzhou university city, which means to supply a good platform for students transaction and arose the awareness of diligent and thrifty, which can create a better university. According to transaction system of economic management, I developed a second-hand materials transaction platform which is based on WEB by survey, analysis and interview. This platform puts B/S and MVC system into use, which gets help from JSP、JavaBean、Servlet ,Struts and Microsoft SQL Server 2005. this platform has at least five functions: information commodity, shopping cart management, online communication, message reply, dynamic information. The whole system makes the most use of the idea of modulization, which makes this system pragmatically, flexibly and conveniently. Key words: MVC B/S WEB second-hand material transaction platform 目录 1 绪 论 .1 1.1 选题背景.1 1.2 研究目的和意义2 1.3 国内外研究现状2 1.4 论文主要研究内容 3 2 系统关键技术研究 5 2.1 JSP 技术简介5 2.2 SERVLET技术简介 .5 2.3 JAVABEAN技术简介 8 2.4 STRUTS技术简介 .9 2.5 JAVASCRIPT技术简介 .10 2.5 基于 B/S 的 WEB 应用体系结构10 2.6 MVC 三层开发模式简介11 2.7 本章小结14 3 系统需求分析 15 3.1 总体需求15 3.2功能需求 .15 3.3 性能需求18 3.4 系统可行性研究.19 3.5 系统要求 19 3.6 开发环境 19 3.7 本章小结20 4 系统概要设计 21 4.1 概述 .21 4.2 前台功能模块总体设计22 4.3 后台功能模块总体设计23 4.4数据库设计23 4.5前台用户管理模块设计 .32 4.6前台商品信息展示模块设计 34 4.7前台购物车管理模块设计34 4.8前台在线交流模块设计 .36 4.9前台留言管理模块设计 .37 4.10 后台用户管理模块设计 .38 4.11 后台商品和平台信息维护模块设计 .39 4.12 本章小结 .41 5 系统详细设计与实现 .42 5.1 平台的搭建 42 5.2 前台用户管理模块的实现 45 5.3 前台商品信息展示模块的实现.47 5.4 前台购物车模块的实现49 5.5 前台在线交流模块的实现 51 5.6 前台留言管理模块的实现 51 5.7 后台用户管理模块的实现 52 5.8 后台商品和平台信息维护模块的实现52 5.9 本章小结54 6 系统测试55 6.1 测试的定义及目的 .55 6.2 测试的原则 55 6.3 测试的方法 55 6.4 二手物品交易平台的测试 55 6.5 本章小结56 结 论.57 致 谢.59 参考文献 59 1 1 1 绪绪 论论 历史的车轮将我们载入了信息化和知识经济的时代。Internet 在中国的迅 速发展,人们日常生活中越来越多地使用这项新的技术来为自己的工作、学习和 生活服务。由于 WEB 页面能把文本、图像、声音、动画、视像等多种媒体信息 集于一体,不但使信息的显示更加生动,而且使信息的浏览更为方便,同时 WEB 页面能实现网上交易平台、客户信息反馈等方面方便了商家与客户之间信息交 流。 1.11.1 选题背景选题背景 人类社会经历了从野蛮到文明、从原始社会到社会主义社会、从使用简单 石头工具到现在使用智能化工具的过程,生活水平不断提高,逐渐有了从物物 交换到以货币为等价物的交换,经历了一个由低级到高级的过程。随着社会的 发展,技术的不断发展以及产品的不断更新换代使得人们对物质的要求越来越 高,随之而来的问题便是越来越多的二手货物堆积了下来却无法得到更好的利 用。特别是在大学校园里面,作为走在世界发展最前端的大学生,首先,他们 没有时间也没有精力去经营一个二手货物商店,而且他们也没有足够的二手货 来支撑这个商店,一般大学校园里大学生们的二手货都只是零散的,并不能得 到很好的二次利用。其次,一个主要的原因就是大学生们并没有稳定的资金来 源,所以要如何处理自己身边的二手货物,并且如何能够得到一样自己想要的 二手货物而又不需要花太多的钱,成为当今大学生们需要解决的一个难题。 Internet 经过 20 多年的发展,已经成为世界上覆盖最广、规模最大、信 息资源最丰富的计算机网络,它延伸到了世界的每一个角落,兼容所有的传输 媒介,支持成千上万不同的应用。Internet 极大地推动了世界经济向知识经济 的转变,近两年间,随着国际互联网以惊人的速度席卷全球之际,我国多媒体 网络覆盖面也在不断扩大。然而,对于在校学生,一般而言,现在都还没有自 食其力,大都需要父母的财力支持。尤其是大学生的花费更多,平时吃好、喝 好、用好奉行“三好主义” ,而殊不知父母的沉重负担。在更多的时候,我们有 很多东西都没用处,一直闲着,或扔掉或舍不得存着。对这种情况,我们一般 选择前者扔掉。这时,如果大家能把不用的物品拿出来交换,就会得到共 赢。因此,大学校园里学生们的二手货能够得到更好的利用所欠缺的正是这么 2 一个交易平台。根据常州机电职业技术学院经济管理系学生社团二手交易模式, 利用 Internet 这个媒介建立一个功能强大的、界面美观的大学校园二手物品交 易平台,为常州机电职业技术学院社团信息化的发展及学生们的二手货物能更 好的得到二次利用而搭建一个良好的交易平台。 1.21.2 研究目的和意义研究目的和意义 本课题的提出意在开发一个面向常州大学城二手交易市场的二手物品交易 平台,它的出发点必须是实用,操作简单,界面友好,让大学校园内有买卖需 求的人群共享同一个信息渠道,实现买卖的双方线上、线下互动。另外也是为了 锻炼自己,加强对 JSP、JavaBean、Servlet、Struts、JavaScript 语言技术和 MVC 三层开发模式的掌握能力,了解其内部的运行原理。 1.31.3 国内外研究现状国内外研究现状 目前各国政府已充分认识到电子商务对经济增长的巨大推动作用,从而大 力促进电子商务在国民经济各个领域的应用。 在电子商务的技术、市场和社会 法律等方面,美国均处于领先地位,有著名的购物网站 A、eBay 等。 欧洲虽起步落后于美国,但其发展势头却非常迅猛。 国外电子商务系统发展 已相对完善,仍存在一定的问题,大多数系统忽略了二手交易市场这个独特的 环境,针对性不强。 由于二手交易应用的商务模式还在探索中,因此在现阶段, 二手交易的电子商务真正成熟发展的还不太多。 我国的电子商务起步晚,发展速度快。 经过 19992002 年的萌芽, 20032006 年的高速增长阶段,现在已经进入了纵深发展阶段。 在我国,目 前的网络交易平台包括二手交易在内有很多,门户网站以易趣、阿里巴巴、淘 宝网等为主,而电脑配件等就以太平洋二手栏目为主,此外,还有当当、卓越、 全球采购等著名的购物网站。 目前国内的网上交易市场还存在缺乏诚信、安全、 物流不畅、法律政策环境有待改善的问题。 比如所有的网上交易都无法做到实 名制,具有安全隐患;复杂一点的如二手设备交易,因为网上交易和习惯的传 统交易方法不同,也会遇到一些困难。 发展二手交易电子商务网站,就要通过 打造一个安全的交易环境,创新经营策略来吸引网民,走大众化的路线。 另外,在目前我国大部分高校在大学生创业和社团活动中,二手物品交易 市场仍通过提供固定的交易市场进行交易,需要通过跳蚤市场或是贴广告作为 3 交易的中介,时间和地点的不稳定性提高了交易的困难度,想要成功进行交易 变的非常困难。信息流动滞后,对于买方想要获得二手交易市场的商品信息必 须跑去跳蚤市场或是寻找公告板上张贴的广告;而对于卖方想要使自己想卖的 物品信息传播出去要么破费去张贴广告,要么就是节假日去跳蚤市场摆摊。信 息传播具有较大的滞后性。因此根据我院经济管理系社团交易发展壮大开发常 州大学城大学生二手物品交易平台是十分必要的。 就目前大学生二手市场交易平台的研究现状来看,国内大部分高校学生在 该方面研究还没有形成系统,而相关的研究又是分散的、理论性的研究较多, 而系统的、应用性的研究较少。因此提供大学生二手物品交易平台是十分重要 的。 1.41.4 论文主要研究内容论文主要研究内容 本课题依托常州机电职业技术学院经济管理系社团二手交易模式开发常州 大学城大学生二手物品交易平台的实现,对 JSP、JavaBean、Servlet、Struts 及 JavaScript 技术、数据库技术以及 UML 建模语言等前沿的技术和开发工具进 行综合运用,从而开发实现一套基于 Web 环境的以常州机电职业技术学院经济 管理系社团二手市场交易模式为依托的常州大学城大学生二手物品交易平台。 整个系统采用 B/S 三层结构进行设计,开发平台使用的是 MyEclipse 集成 开发平台,使用 Java 编程语言,并结合 CSS+DIV 网页设计模式和 MVC 三层开发 设计模式,采用 Apache 的 Tomcat 服务器,同时以 SQL SERVER 2005 作为数据 库平台。具体研究内容包括以下几方面: (1)综合运用计算机网络技术、软件技术、管理信息系统思想和软件工程方 法,选择实现系统的技术方案,并确定其开发环境。 (2)研究实现系统的关键技术:JSP、JavaBean、Servlet 结合的 MVC 三层 设计模式、Struts 中 MVC 的设计模式、Servlet 的监听器技术实现在线人数统 计、Servlet 的过滤器技术实现用户授权验证、会话状态管理技术、 JavaScript 客户端脚本技术。 (3)对常州大学城大学生二手物品交易平台进行总体设计,确定系统的物理 架构、系统功能和软件架构,并采用 E-R 模型图示法和关系模型等技术对系统 数据库概念设计、逻辑设计和安全性设计。 4 (4)采用 UML 对系统进行详细设计,使用 JSP、Servlet 和 Struts 技术、数 据访问技术、Java 编程语言和 JavaScript 脚本语言等,实现用户管理、商品 信息管理、购物车管理、动态信息公告、在线交流和留言管理等功能模块。 (5)充分利用软件测试方法保证软件质量,对常州大学城大学生二手物品交 易平台进行单元测试、集成测试、验收测试、系统测试,重点研究黑盒测试和 白盒测试的方法。 5 2 2 系统关键技术研究系统关键技术研究 选择 JSP、JavaBean、Servlet、JavaScript 等作为应用程序开发语言,采 用 Struts 框架,运用 MVC 三层设计模式及 CSS+DIV 网页设计模式,运用 Tomcat 服务器技术,并选择 SQL Server 2005 作为后台的数据库,整个系统完全基于 B/S (Browser/Server)模式进行设计。 2.12.1 JSPJSP 技术简介技术简介 JSP 是服务器端的脚本语言,是以 SERVLET 为基础开发而成的动态网页生 成技术,它的底层实现是 JAVA SERVLET。 JSP(JAVA SERVER PAGES)由 HTML 代码和潜入其中的 JAVA 代码所组成。 服务器在页面被客户端请求以后对这些代码进行处理,然后将生产的 HTML 页面 返回客户端的浏览器。按照脚本语言是服务于某一个子系统的语言这种论述, JSP 应当被看作是一种脚本语言。然而,作为一种脚本语言,JSP 又显得过于强 大了,在 JSP 中几乎可以使用全部的 Java 类。 JSP 的特点是面向对象、 跨平台、 和 SERVLET 一样稳定、 可以使用 SERVLET 提供的 API,同时克服了 SERVLET 的缺点。 在使用 JSP 时一般和 JAVABEANS 结合使用,从而将界面表现和业务逻辑分 离。分开内容和显示逻辑的好处是,更新页面外观的人员不必懂得 Java 代码, 而更新 JavaBeans 三类的人员也不必是设计网页的行家里手,就可以用带 JavaBeans 类的 JSP 页面来定义 Web 模板,以建立一个由具有相似的外观的页 面组成的网站。JavaBeans 类完成数据提供,这样在模板中就没有 Java 代码, 这意味着这些模板可以由一个 HTML 编写人员来维护。当然,也可以利用 Java Servlet 来控制网站的逻辑,通过 Java Servlet 调用 JSP 文件的方式来将网站 的逻辑和内容分离。 2.22.2 ServletServlet 技术简介技术简介 Java Servlet 是 JSP 技术的基础,JSP 本身就是预先被编译成 Servlet,然 后再运行的,而且大型的 Web 应用程序的开发需要 Java Servlet 和 JSP 配合才 能完成,Servlet 这个名称大概源于 Applet,现在国内的翻译方式很多,本文 为了避免误会,本文直接采用 Servlet 这个名称而不做任何翻译,读者如果愿 6 意,可以称之为“小服务程序” 。Servlet 其实和传统的 CGI 程序和 ISAPI、NSAPI 等 Web 程序开发工具的作用是相同的,在使用 Java Servlet 以 后,用户不必再使用效率低下的 CGI 方式,也不必使用只能在某个固定 Web 服 务器平台运行的 API 方式来动态生成 Web 页面。许多 Web 服务器都支持 Servlet,即使不直接支持 Servlet 的 Web 服务器也可以通过附加的应用服务器 和模块来支持 Servlet。得益于 Java 的跨平台的特性,Servlet 也是平台无关 的,实际上,只要符合 Java Servlet 规范,Servlet 是完全平台无关且是 Web 服务器无关的。由于 Java Servlet 内部是以线程方式提供服务,不必对于每个 请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此 Java Servlet 效率非常高。但 Java Servlet 也不是没有缺点,和传统的 CGI、ISAPI、NSAPI 方式相同,Java Servlet 是利用输出 HTML 语句来实现动态 网页的,如果用 Java Servlet 来开发整个网站,动态部分和静态页面的整合过 程简直就是一场噩梦。这就是为什么 SUN 后来还要推出 Java Server Pages 的 原因。 2.2.1 Servlet 工作流程 Servlet 是 Java 编写的服务器端程序,是由服务器端执行和调用的 Java 类。Servlet 是采用 Java 技术来实现 CGI 功能的一种技术,能够像 CGI 一样动 态地扩展 Web 服务器的功能,并采用请求响应模式提供 Web 服务。Servlet 和 CGI 一样都是运行在 Web 服务器上,用来生成 Web 页面。Servlet 的主要功 能在于交互式地浏览和修改数据,生成动态 Web 内容。其工作流程图如图 2-1 所示。 Servlet 工作流程: a)客户端发送请求信息至服务器。 b)服务器将请求信息发送至 Servlet。 c)Servlet 生成响应内容并将其传给 Servlet。响应内容动态生成,通常 取决于客户端的请求。 7 Web Client HTTP Servlet request HTTP Servlet response Web Component DateBase Web Server 图 2-1 Servlet 工作流程图 d)服务器将响应信息返回至客户端。 2.2.2 Servlet 过滤器开发技术 Servlet 过滤器是一种小型的、可插入的 Web 组件,其提供了对 Web 应用 程序的前期处理和后期处理的逻辑控制,可以拦截请求和响应,以便查看、提 取或以某种方式操作正在客户端和服务器之间进行交换的数据。 Servlet 过滤器具有动态、灵活、透明、模块化、可移植、可重用等性质, 是一种自包含的、模块化的组件,可以在使用时将其添加到请求/响应链中,也 可以被删除而不影响到应用程序的其他 Web 组件。Servlet 过滤器应用非常广 泛,有拦截的地方一般都可以用到过滤器,其也和 Servlet 类似,也需要在 Web 应用配置文件(即 Web.xml)中进行配置部署。过滤器并不是 servlet,他 们并不实际创建一个请求。他们是请求到达一个 servlet 前的预处理程序,响 应离开 servlet 后的后处理程序。 Servlet 过滤器 API 包含 3 个简单的接口,即 Filter、FilterChain 和 FilterConfig,它们位于 javax.servlet 包中。从编程的角度看,过滤器类将 实现 Filter 接口,然后使用这个过滤器类中的 FilterChain 和 FilterConfig 接口。该过滤器类的一个引用将传递给 FilterChain 对象,以允许过滤器将控 制权传递给过滤器链中的下一个过滤器或者资源。FilterConfig 对象将由容器 提供给过滤器,以允许访问该过滤器的初始化数据。过滤器应用控制流程如图 2-2 所示。 浏浏览览器器过过滤滤器器链链Servlet 处处理理后后的的响响应应 原原始始请请求求 处处理理后后的的请请求求 响响应应 在请求到达servlet之前,过滤器可以截取该请求 并检查请求内容。除了检查之外,还可以定制请 求,如修改请求标题或者请求数据等。具体的方 法是对传递过来的ServletRequest对象进行操作, 达到检查和修改的目的。 被过滤器处理后的请 求发给servlet 过滤器可以截获响应信息并进行修改,例如 修改响应标题或者响应数据。具体的方法是通过操 作servlet对象传递给它的ServletResponse对象来 达到目的。处理完毕之后将修改后的响应信息发送 给客户端。 servlet执行其任务并可 能产生响应。 8 图 2-2 过滤器应用控制流程 2.2.3 Servlet 监听器开发技术 Servlet 监听器主要有三种,在 ServletContext(上下文对象) 、 Session(会话)和 request(请求)这三对象上进行监听,可以监听对象的创建、 销毁、添加属性、删除属性、属性值的改变等。ServletContext 对象的作用域 在整个 WEB 应用程序,类似于 Static 属性;Session 的作用域在一个会话,一 个会话可以理解为一个从一个浏览器发出请求到服务器开始,一直到浏览器关 闭(但通常我们可以设置会话的生命期,防止那些获得连接后却长时间没有再 向服务器发出请求的情况) ,相当于类的成员变量;request 的作用域仅在一次 请求,即浏览器发送一次请求到服务器处理该请求并发回响应就结束了,相当 于局部变量。 Servlet 事件监听器与 Java 的 GUI 事件监听器类似,一般情况下按监听的 对象划分,Servlet 事件监听器可以分为: 1.用于监听应用程序环境对象(ServletContext)的事件监听器; 2.用于监听用户会话对象(HttpSession)的事件监听器; 3.用于监听请求消息对象(ServletRequest)的事件监听器。 按监听的事件类项划分,Servlet 事件监听器可以分为: 1.用于监听域对象自身的创建和销毁的事件监听器; 2.用于监听域对象中的属性的增加和删除的事件监听器; 3.用于监听绑定到 HttpSession 域中的某个对象的状态的事件监听器。 2.32.3 JavaBeanJavaBean 技术简介技术简介 JAVABEAN 是基于 JAVA 的组建模型,有点类似于 MICROSOFT 的 COM 组建。 JavaBean 就是 JAVA 的可重用组件技术。ASP 通过 COM 来扩充复杂的功能,如 文件上载、发送 email 以及将业务处理或复杂计算分离出来成为独立可重复利 用的模块。JSP 通过 JavaBean 实现了同样的功能扩充。JSP 对于在 Web 应用中 9 集成 JavaBean 组件提供了完善的支持。这种支持不仅能缩短开发时间(可以 直接利用经测试和可信任的已有组件,避免了重复开发) ,也为 JSP 应用带来 了更多的可伸缩性。JavaBean 组件可以用来执行复杂的计算任务,或负责与数 据库的交互以及数据提取等。 在 JAVA 平台中,可以无限扩充 JAVA 程序的功能,通过 JAVABEAN 的组合可 以快速生产新的应用程序。JAVABEAN 通过 JAVA 虚拟机(JAVA VIRTUAL MACHINE)执行,运行 JAVABEAN 最小的需求是 JDK1.5 或者以上的版本。 对于程序员来说,最好的一点就是 JAVABEAN 可以实现代码的重复利用,另 外对于程序的易维护性等等也有很重大的意义。在实际的 JSP 开发过程中,读 者将会发现,和传统的 ASP 或 PHP 页面相比,JSP 页面将会是非常简洁的,由 于 JavaBeans 开发起来简单,又可以利用 Java 语言的强大功能,许多动态页面 处理过程实际上被封装到了 JavaBeans 中。 JAVABEAN 传统的应用在于可视化的领域,如 AWT 下的应用。自从 JSP 诞生 后,JAVABEAN 更多的应用在了非可视化领域,在服务器端应用方面表现出了越 来越强的生命力。 2.4 Struts 技术简介技术简介 Struts 是一个为开发基于模型(Model)视图(View)控制器(Controller) (MVC)模式的应用架构的开源框架,是利用 Servlet,JSP 和 custom tag library 构建 Web 应用的一项非常有用的技术。由于 Struts 能充分满足应用开 发的需求,简单易用,敏捷迅速。它使用服务层框架可以将 JavaBeans 从 Jsp/Servlet 中分离出来,而使用表现层框架则可以将 Jsp 中剩余的 JavaBeans 完全分离,这部分 JavaBeans 主要负责显示相关信息,一般是通过标签库 (Taglib)实现,不同框架有不同自己的标签库,Struts 是应用比较广泛的一 种表现层框架。MVC 是一个设计模式,它强制性的使应用程序的输入、处理和 输出分开。使用 MVC 应用程序被分成三个核心部件:模型、视图、控制器。它 们各自处理自己的任务。 视图:视图是用户看到并与之交互的界面。对老式的 Web 应用程序来说, 视图就是由 HTML 元素组成的界面,在新式的 Web 应用程序中,HTML 依旧在视 图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括 Adobe Flash 10 和象 XHTML、XML/XSL,WML 等一些标识语言和 Web services. 如何处理应用程 序的界面变得越来越有挑战性。MVC 一个大的好处是它能为你的应用程序处理 很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存 储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户 操纵的方式。 模型:模型表示企业数据和业务规则。在 MVC 的三个部件中,模型拥有最 多的处理任务。例如它可能用象 EJBs 和 ColdFusion Components 这样的构件对 象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关, 这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可 以被多个视图重用,所以减少了代码的重复性。 控制器:控制器接受用户的输入并调用模型和视图去完成用户的需求。所 以当单击 Web 页面中的超链接和发送 HTML 表单时,控制器(例如:servlet)本身 不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处 理请求,然后确定用哪个视图来显示模型处理返回的数据。 现在我们总结 MVC 的处理过程,首先控制器接收用户的请求,并决定应该 调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据, 最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。 2.52.5 JavaScriptJavaScript 技术简介技术简介 JavaScript 就是适应动态网页制作的需要而诞生的一种新的编程语言,如 今越来越广泛地使用于 Internet 网页制作上。JavaScript 是由 Netscape 公司 开发的一种脚本语言(scripting language) ,或者称为描述语言。在 HTML 基 础上,使用 JavaScript 可以开发交互式 Web 网页。JavaScript 的出现使得网 页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多 活跃的元素和更加精彩的内容。运行用 JavaScript 编写的程序需要能支持 JavaScript 语言的浏览器。Netscape 公司 Navigator 3.0 以上版本的浏览器 都能支持 JavaScript 程序,微软公司 Internet Explorer 3.0 以上版本的浏 览器基本上支持 JavaScript。微软公司还有自己开发的 JavaScript,称为 JScript。 Javascript 和 Jscript 基本上是相同的,只是在一些细节上有出入。 Javascript 短小精悍,又是在客户机上执行的,大大提高了网页的浏览速度和 11 交互能力。同时它又是专门为制作 Web 网页而量身定做的一种简单的编程语言。 JavaScript 使网页增加互动性。JavaScript 使有规律地重复的 HTML 文段 简化,减少下载时间。JavaScript 能及时响应用户的操作,对提交表单做即时 的检查,无需浪费时间交由 CGI 验证。 2.52.5 基于基于 B/SB/S 的的 WEBWEB 应用体系结构应用体系结构 2.5.1 传统的两层体系结构 在 Web 发展的初期,Web 应用主要是通过静态页面在 Internet 上发布信息。 用户通过浏览器向服务器发送请求,服务器接收用户端的请求,向客户端浏览 器发送所请求的页面。在这种结构下,网站上的页面是静态的,无法根据用户 的实际使用情况做动态的变化。网站的信息提供者通过更新服务器上的网页来 向用户提供最新的信息。用户和浏览器之间只有有限的交互,而网站和用户之 间几乎没有交互。 2.5.2 三层体系结构 三层体系结构图如图 2-3 所示。 CGI,JSP,PHP 等技术的出现,使得开发动态交互式的 Web 应用得以实现。 用户通过浏览器向服务器发送请求,Web 服务器接收客户端发送来的请求,对 请求进行分析,如果请求是静态页 浏览器Web服务器 请求 响应 数据库 图 2-3 三层体系结构图 就将所请求的页面发送到客户端;如果请求的是动态页面,那么就执行此动态 页面,并将执行结果发送给客户端。动态页面中的脚本程序可以和数据库服务 器进行交互。 Web 服务器可以根据用户的请求动态更新页面上的信息,Web 信息提供者可 以通过改变数据库中的数据向用户提供最新信息,而不需要逐个更改页面。用 户可以通过这些动态页面向数据库中输入信息,从而增强了用户和服务器之间 的交互性。 12 2.6 MVC 三层开发模式简介三层开发模式简介 MVC 是一种设计模式,她强制性地把应用程序的输入、处理和输出分开。 MVC 应用程序总是由这三个部分组成:模型、视图和控制器,它们分别担负不 同的任务。图 2-4 显示了这几个模块各自的功能以及它们的相互关系。 图 2-4 MVC 的工作原理 视图显示模型状态,接受数据更新请求,把用户输入数据付给控制器;控 制器接受用户请求,调用模型响应用户请求,选择视图显示响应结果;最后模 型代表应用程序状态,响应状态查询处理业务流程,通知视图业务状态更新。 了解了 MVC 模式之后我们了解到它的作用主要是使我们的程序独立性更高,更 加模块化,各个层独立完成自己的任务,耦合低,一个部分出错后,其它部分 不会受到影响,这样我们写出来的程序就更加清晰了。 2.6.1 JSP 开发中的 MVC 模型 JSP 网站开发技术标准提供了两种开发模式:一种是 JSP+JavaBean 开发模 式;一种是 JSP+Servlet+JavaBean 开发模式。 JSP+JavaBean 模型图如图 2-5 所示。 浏 览 器 JSPJavaBeanDataBase 图 2-5 JSP+JavaBean 模型图 在这种模型中,JSP 页面独自响应请求并将处理结果返回给客户,所有的 数据通过 JavaBean 来处理,JSP 实现页面的显示。此模型常常会导致页面被嵌 入大量的脚本语言或者 Java 代码段,当处理大型业务时,页面程序将变得异常 13 复杂给开发和维护带来困难。 JSP+Servlet+JavaBean 模型图如图 2-6 所示。 浏 览 器 Servlet JSP JavaBeanDataBase 图 2-6 JSP+Servlet+JavaBean 模型图 Servlet 技术是一种采用 Java 技术来实现 CGI 功能的一种技术。Servlet 是运行在 Web 服务器上,用来生成 Web 页面。Servlet 技术非常适于服务器端 的处理和编程。 在此种开发模式中,JSP 技术用来显示页面,该页面中没有任何的商业处 理逻辑,通过 Servlet 技术来完成大量的事物处理工作。Servlet 用来处理事 务的请求,充当着一个控制者的角色,并负责向客户发送请求,创建 JSP 需要 的 Bean 和对象,根据用户的请求行为,决定将哪个 JSP 页面发送给用户。 从上面两种开发模式来说:第二种模式要好些,更适合于团队开发,速度 相对较慢,但是可维护性高。 2.6.2 Struts 开发中的 MVC 模型 在以上提到的 JSP + JavaBean 或 JSP + Servlet+JavaBean 也可以完成相 应的功能,但 Jsp + JavaBean 的缺点是 Java 代码全部嵌套在 JSP 页面里边, 这样一旦出现问题,将会很难从 HTML 与 JAVA 混合的页面出找出错误。JSP + Servlet+JavaBean 这种模式 Servlet 虽然可以起到一个控制作用,但 Servlet 中的代码不够灵活,往往跳转语句是一些硬代码,这样如果以后出现业务逻辑 的改变,就需要改变很多的代码,Struts 用 XML 文件保存了会动态改变的一些 跳转语句与一些国际化的参数,这样如果程序要改变,只需要简单的改变 XML 文件即可。Struts 帮我们完成了很多重复性的工作,提高我们的工作效率,当 然程序也更加健壮。 因此,下面结合 Struts 的运行过程介绍 Struts 核心组件的职能和作用来 完成 MVC 三层的开发设计。如图 2-7 所示,ActionServlet 是 Struts 最核心的 组件。在 Web 容器启动的时候,ActionServlet 被初始化,加载 struts- config.xml 配置文件(这也是为什么当 Struts 配置文件修改的时候需要重新启 14 动 Web 容器)。Struts 处理请求的过程如下: (1)当客户端浏览器发起请求到 ActionServlet 时,ActionServlet 首先对 请求进行一系列处理:根据请求的路径和配置信息找到对应的 Action Bean 和 Form Bean。 (2)在确定将要调用的 Action Bean 和对应的 Form Bean 后,就将请求中 包含的值填充到 Form Bean 中(Action 可以不关联任何 ActionForm,所以这一 步是可选的)。在调用 Action 的 execute 方法前,ActionServlet 还需要准备 好 ActionMapping 参数,ActionMapping 中包含了该 Action 的配置信息。 (3)然后 Struts 将请求分发至相应的 Action Bean 处理,ActionMapping 参数、ActionForm 参数、requset 和 response 都作为参数传给处理请求的 Action Bean 和 execute 方法。 (4)Action 调用业务逻辑方法,得到返回值,并返回 ActionForward 对象。 (5)控制权重新回到 ActionServlet,ActionServlet 根据 Action 返回的 ActionForward 对象转发到相应的 JSP 页面。 (6)处理结果返回给浏览器。 图 2-7 Struts 的工作原理 2.72.7 本章小结本章小结 本章主要介绍了系统实现的关键技术,首先从 15 JSP、Servlet、JavaBean、JavaScript 编程语言开始入手,紧接着介绍 B/S 的 WEB 应用体系结构,最后介绍了 MVC 三层开发模式技术在 JSP 与 Struts 中的运 用。 3 3 系统需求分析系统需求分析 需求分析不仅是软件定义时期的最后一个阶段,而且是软件开发期的第一 个阶段,也是关系到软件开发成败的关键步骤。只有通过需求分析才能把软件 功能和性能的总体概念描述为具体的软件需求规格说明,从而奠定软件开发的 基础。本阶段所研究的对象是软件项目的用户要求,必须全面理解用户的各项 要求,但又不能全盘接受所有的要求。为了达到这一目的,我们必须对其中模 糊的要求进行澄清,然后才能决定是否可以采纳。准确地表达被接受的用户要 求,也是需求分析的另一个重要方面,只有经过确切描述的软件需求才能成为 软件设计的基础。 3.13.1 总体需求总体需求 常州大学城大学生二手物品交易平台是以常州机电职业技术学院经济管理 系社团二手交易市场依据,通过分析、调研该社团交易的业务处理流程进行实 施设计与开发。 16 通过分析,作为一个大学生二手交易型平台,商品信息必须准确、及时更 新,便于用户浏览信息,产生购买意向;买卖双方可通过在线聊天,增加了解 彼此的信息;用户注册必须填入准确的信息,以保护双方的合法权益;用户可 以自主管理自己的信息以及注册信息和找回自己的密码等问题;用户随时可以 查看留言、发布留言、回复留言,加强平台交易的灵活性;管理员需及时检查 用户信息、动态增加公告信息和设置商品的特价等,以确保网站正常运营。 该系统由前台信息浏览、用户管理和后台管理两部分组成。前台信息浏览 显示最新商品信息、特价商品信息,提供站内搜索,方便用户更快更准确的找 到所需信息,前台提供用户登录和管理员登录,并且可以连接大学城各高校校 内新闻,关心各校新闻。在用户登录后可以查看、编辑注册信息、找回密码、 查看物品详细信息、进行购物、查看订单信息、在线交流等。管理员可以查看、 管理用户信息,管理商品信息,保证网站运转。 3.23.2功能需求功能需求 3.2.1 交易平台前台功能需求 常州大学城大学生二手交易平台前台信息浏览显示最新商品信息、特价商 品信息,提供站内搜索,方便用户更快更准确的找到所需信息,前台提供用户 登录和管理员登录,并且可以大学城各高校校内新闻,关心各校新闻。前台的 功能需求用例图如图 3-1 所示: 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 17 图 3-1 前台功能需求用例图 具体内容如下: (1)商品信息浏览:浏览网站最新发布的商品信息、特价商品信息及销售 商品的排行榜;查看商品的详细信息必须用户登录才能进行并可以购 物; (2)商品信息搜索:通过大类搜索本平台的商品信息,也可以自己输入商 品的名称进行搜索; (3)用户登录、注册:用户可以直接登录,进入交易平台首页;提供用户 注册的接口;提供后台登录接口; (4)用户管理:用户可以修改自己的注册信息、在忘记密码时通过问题找 回密码; (5)购物车管理:在用户登录后,可以进行购物,提供修改购物车信息、 清空购物车、继续购物、结账模拟功能、生成订单功能等; (6)订单管理:显示用户在本平台的所有订单信息,包括已发货和未发货 的订单,并且可以查看订单的详细信息; (7)在线交流:显示所有在线交流的会员,可以直接和相关人员进行聊天 并咨询相关商品的信息; (8)留言簿:所有用户都可以进行留言和回复交流,增强平台的灵活性, 可以提供双方物品的交易; (9)平台公告:显示平台最新动态,及时了解有关本交易平台的相关新闻; (10)友情链接:提供常州大学城所有高校的门户网站,了解各校的校园动 态新闻; (11)设置主页:将本站设置成主页,可以在打开浏览器时第一时间打开网 站主页。 3.2.2 交易平台后台功能需求 常州大学城大学生二手物品交易平台后台主要由用户管理、商品信息管理、 商城信息管理三大模块组成,用户管理模块包括管理员设置和会员设置,管理 员设置包括管理员登录、管理员查询,管理员添加,管理员删除;会员设置包 括会员信息查询,会员删除。在用户管理模块部分,不同的功能对应于不同权 18 限的用户,只有拥有相应权限的用户才可以使用某种功能。系统用户分为会员 和管理员两类,管理员又可以分为超级管理员和普通管理员。不同类型的用户 具有严格的权限划分。后台的功能需求用例图如图 3-2 所示: 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 图 3-2 后台功能需求用例图 具体内容如下: (1)用户管理:在会员管理模块管理员可以查看所有会员的列表及详 细信息,并可以删除相关会员的信息;在管理员模块管理员可以 查看所有管理员的列表及详细信息,一般管理员只能修改自己的密码 和信息,而超级管理员可以增加和删除管理员的信息; (2)商品信息管理:管理员可以查看交易平台的所有的商品信息、添加和 删除商品信息,并且可以设置商品的特价;同时管理员还可以对商品 的大类别和小类别进行查询、添加和删除操作; (3)商城平台信息维护:可以查看、添加、修改、删除该平台前台动态展 示信息操作;并且可以添加、删除友情链接相关内容。 3.33.3 性能需求性能需求 系统开发的总体任务是实现常州大学城大学生二手交易平台网络化、规范 化、自动化、即时化、专业化。主

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论