基于struts2在线交易系统的设计与实现毕业设计(编辑修改稿)内容摘要:
到20xx 年的 2680 亿; 个人网上购物将从 1997 年的 18 亿发展到 20xx 年的 260亿。 因此,电子商务中蕴涵着无穷的商业机遇。 技术可行性研究 本系统采用 MVC 模式设计的, 在面向对象系统的设计中可以认为,类及其生成的对象是构成面向对象系统的最基本的元素;采用设计方法组合这些元素,得到构成面向对象系统的构件。 同时,这些构件的设计方法在经过不断的改进和完善后逐渐成型,成为构成面向对象系统的基本设计参考,也称为设计模式。 我们采用设计模式来抽象和总结系统构建的设计方法,同时将它用于新的系统构建的设计中,使用类和对象,使我们在元素的层次上实现了重用性。 设计模式提供了在特定应用场景下解决问题的类、对象及相互关系的设计方法。 这些方法并不针对于具体的系统,只是提供了一种设计系统的思考方法,一个设计模式可能用于不同的系统,一个系统也可能会用到多个设计模式。 MVC 是一种目前广泛流行的软件设计模式,近年来,随着 J2EE(Java2 Enterprise Edition)的成熟, MVC 得到广泛使用,并成为 J2EE 平台上推荐的一种设计模式。 它为开发者理解分析应用模型提供了最基本的分析方法、清晰的设计框架和规范的依据。 MVC 强制性地把一个应用的输入、处 理、输出流程按照视图、控制、模型的方式进行分离,形成了三个核心模块:控制器、模型、视图,它们担负不同的任务。 控制器 (Controller):控制器接受用户的输入并调用模型和视图去完成用户的需求。 该部分是用户界面与 Model 的接口。 一方面它解释来自视图的输入,将其解释成为系统能够理解的对象,同时它也识别用户动作,并将其解释为对模型特定方法的调用:另一方面,它处理来自于模型的时间和模型逻辑执行的结果,调用适当的视图为用户提供反馈。 模型 (Model):模型是应用程序的主体部分。 模型表示业务数据和业务逻辑。 一个 模型能为多个视图提供数据。 由于同一个模型可以被多个视图重用,所以提高了应用的可重用性。 视图 (View):视图是用户看到并与之交互的界面。 视图向用户显示相关的数据,并能接受用户的输入数据,但是它并不进行任何实际的业务处理。 视图可以向模型查询业务状态,但不能改变模型。 视图还能接受模型发出的数据更新事件,从而对用户界面进行同步更新。 6 模 型封 装 应 用 程 序 状 态相 应 状 态 相 应应 用 程 序 功 能通 知 视 图 改 变视 图解 释 模 型模 型 更 新 请 求发 送 用 户 输 入 给 控 制 器允 许 控 制 器 选 择 视 图控 制 器 定 义 应 用 程 序 行 为用 户 动 作 映 射 模 型 更 形选 择 响 应 行 为状 态 查 询通 知 查 询状 态 改 变方 法 调 用 事 件 图 21 MVC 组件的关系和功能 从图中我们可以看到 MVC 的处理过程。 首先控制器接受用户的请求,并决定应该调用那个模 块来处理;然后模型根据用户请求进行相应的业务逻辑处理,并返回数据;最后控制器调用相应的试图来格式化模型返回的数据,并通过试图呈现给用户。 MVC 设计模式的优点: (1)允许多种用户界面的扩展:在 MVC 模式中视图与模型没有必然的联系,都是通过控制器发生关系,这样如果要增加新类型的用户界面,只需要改动相应的视图和控制 器即可,而模型则无需发生改动。 (2)模块 的有效性:控制器、模型、视图的程序改变不会影响到其他各层及组件, 不同的组件开发能够同时进行。 (3)代码和设计的复用性:广泛采用可复用的组件,使开发小组之 间易于沟通,设计的系统易于理解,同时也降低了项目的开发成本。 (4)易于维护:控制器和视图可以随着模型的扩展而进行相应的扩展,只要保持一种公共的接口,控制器和视图的旧版本也可以继续使用。 (5)功能强大的用户界面:用户界面与模型方法调用组合起来,使程序使用更清晰友好的界面发布给用户。 综上所述, MVC 是构建应用框架的一个较好的设计模式,可以将业务处理与显示分离,将应用分为控制器、模型和视图,增加了应用的可拓展性、强壮性及灵活性。 基于 MVC 的优点,目前比较先进的 Web 应用框架都是基于 MvC 设计模式的。 本文也是在 基于 MvC 模式的 Web 应用框架 Struts 基础上编写的。 Struts2 框架 : 7 A c t i o n C o n t e x t C l e a n U pO t h e r F i l t e r sF i l t e r D i s p a h t e rH t t p S e r v l e t R e q u e s tA c t i o n M a p p e rA c t i o n P r o x yC o n f i g u r a t i o nM a n a g e rS t r u t s . x m lA c t i o nI n v o c a t i o nI n t e r c e p t e r 2I n t e r c e p t e r 3A c t i o nR e s u l tI n t e r c e p t e r 3I n t e r c e p t e r 2I n t e r c e p t e r 1I n t e r c e p t e r 1T a g S u b s y s t e mT e m p l e t eH t t p S e r v l e t R e s p o n s e 图 22 Struts2功能图 Struts2 的体系结构实现了 MVC 设计模式的概念,他将这些概念映射到 Web 应用程序的组件和概念中。 下图中显示了 Struts 框架的体系结构相应客户的请求时,各部分工作的原理,从 MVC 的角度体现了 Struts 框架中的各种组件的功能角色, 而且 Struts2 是完全开源的可以免费试用。 Hibernate 框架: 是一个基于 Java 的开放源代 码的 O/ RMapping(对象关系映射框架 ),它通过其强大的 O/ R 映射功能 JAVA 对象同存于关系数据库中的数据进行映射,并对 JDBC 进行了轻量级的对象封装,可以使 JAVA 程序员方便地使用对象编程思维来操纵数据库,它不仅提供 ORM 映射服务,还提供数据查询和数据缓存的方法,可以提高查询和处理数据的效率。 它是一种提供面向对象的数据库服务中间件。 MySQL 数据库是免费的,同时它支持完全多线程,支持多处理器,多用户访问。 操作可行性研究 在运行方面,此系统支持 windows 20xx 以上操作系统,硬盘 160G 以上,内存 512M,浏览器 以上, CPU 奔腾四以上。 从交易运营上考虑该系统使用框架开发,后期维护和功能添加十分便利,修改界面只需要重新设计 jsp 页面即可,后台数据处理和前台页面展示完全分离所以前台的更改不会影响到后台的数据处理,反之后台数据处理更改,前台的展示也不会受到影响。 8 从用户使用的角度考虑来看,为用户提供账户注册和管理功能,可以方便用户查看和管理自己的用户信息,而且订单和用户信息绑定更方便用户查看自己已经提交的订单。 为了方便用户在线购物,本系统提供购物车功能,这样用户可以系统的查看和管 理自己选购的商品,可以更好的提高用户的购物体验。 开发方案比较 软件体系结构的确立和比较 一般的体系结构包括两种模式:一种是传统的基于 C/S(C lient/Sever)的模式,即客户机与服务器模式;另外一种是新型的基于 B/S (Browser /Server) 的模式,这种模式下客户端是标准的浏览器,服务器为标准的WEB 服务器。 1. C/S 模式 C/S 模式是一种两层结构的系统,由客户机和应用服务器两部分组成, 是 20 世纪 80 年代末逐步成长起来的一种模式,是软件系统体系结构的一种。 C/S 结构的关键在于功能的分布,一些功能放在前端机(即客户机)上执行,另一些功能放在后端机(即服务器)上执行。 功能的分布在于减少计算机系统的各种瓶颈问题。 C/S 模式简单地讲就是基于企业内部网络的应用系统。 与 B/S( Browser/Server,浏览器 /服务器)模式相比,C/S 模式的应用系统最大的好处是不依赖企业外网环境,即无论企业是否能够上网,都不影响应用。 2. B/S 模式 B/S 模式是一种新型的、面向广大用户的三层结构系统,由客户浏览器、 Web 服务器和应用服务器三部分组成。 它是随着 Inter 技术的兴起,对 C/S 模式应用的扩展。 在这种结构下,用户工作界面是通过 IE 浏览器来实现的。 B/S 模式最大的好处是运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式(比如 LAN,WAN,Inter/Intra 等)访问和操作共同的数据; 3.两者的比较 首先, B/S 比 C/S 的维护工作量大大减少了。 C/S 结构的每一个客户端都必须安装和配置软件, 其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。 特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。 还有,系统软件升级时,每一台 客户机需要重新安装,其维护和升级成本非常高。 而 B/S 结构,客户端不必安装及维护。 其次, B/S 相对 C/S 能够降低总体拥有成本, C/S 软件一般是采用两层结构的。 两层结构中,客户端接受用户的请求,客户端向数据库服务提出请求,数据库服务将数据提交给客户端,客户端将数据进行计算并将结果呈现给 9 用户。 在三层结构中,客户端接受用户的请求,客户端向应用服务提出请求,应用服务从数据库服务中获得数据,应用服务将数据进行计算并将结果提交给客户端,客户端将结果呈现给用户。 这两种结构的不同点是,两层结构中客户端参与运算,而三层结构中客 户端并不参与运算,只是简单的接收用户的请求,显示最后的结果。 由于三层结构中的客户端并不需要参与计算,所以对客户端计算机的配置要求是比较低的。 因此选择了 B/S的体系结构。 设计方案的确立和分析 通过比较两种架构的方案,为了方便用户在线购物和交易,本系统采用基于浏览器的 B/S 架构。 将系统分解为若干个子系统,精确的定义子系统的界面、功能和性能,给出各子系统之间的关系。 这样可以减低解的复杂性,有利于分阶段的完成系统的开发,并提高了系统的开发效率和工作质量。 所采用方案的特点 淘宝网在线 交易系统充分利用了 Browser/Server 架构 的特点,用户无需安装任何客户端,只要通过系统自带的浏览器就可以直接登录系统,节省了客户端安装的时间。 将系统分为若干子系统,该系统的优势在于快捷方便的购物界面和流程。 对于本系统,其功能目标是实现用户购物模式的转变,所以它必须实现整个购物流程的进行,实现对商品分类管理以及保证用户的购物体验。 需求分析 在软件工程中,需求分析指的是在建立一个新的或改变一个现存的 电脑系统 时描写新系统的目的、范围、定义和功能时所要做的所有的工作。 需求分析是软件工程中的一个关键过程。 在这个过程中, 系统分析 员和 软件 工程师确定顾客的需要。 只有在确定了这些需要后他们才能够分析和寻求新系统的解决 方法。 需求分析阶段的任务是确定软件系统功能。 在软件工程的历史中,很长时间里人们一直认为需求分析是整个软件工程中最简单的一个步骤,但在过去十年中越来越多的人认识到它是整个过程中最关键的一个过程。 假如在需求分析时分析者们未能正确地认识到顾客的需要的话,那么最后的软件实际上不可能达到顾客的需要,或者软件无法在规定的时间里完工。 1 需求获取 1.运行环境: 硬件平台: 10 CUP: P4 内存: 512MB 以上 软件平台: 操作系统: Windows XP/Windows 7 数据库: Mysql 开发工具包: MyEclipse 浏览器: 或以上版本,推荐使用 分辨率:最佳效果 1024 像素 *768 像素 2.界面需求: 界面优雅,美观,设计友好。 3.输入输出模式需求 ( 1)输入模式以文字、下拉菜单、单选框; ( 2)输出模式为列表 4.用户角色需求 系统使用者多是非计算机行业人员,因此系统应面向大众,界面简单,使用便捷。 功能需求 整个系统包括四个功能模块:商品展示、购物车、订单管理、用户管理。 1) 商品展示模块: 用例图: 图 23 商 品展示用例图 商品展示用例图描述: 商品预览:交易系统的首页面,交易功能的入口,浏览器访问: 商品明细: 查看感兴趣商品的详细信息 分类检索: 按照类别显示商品(支持三级分类 ) 前置条件: 部属完成 , J2EE 服务器正常启动 后置条件:无 商 品 预 览商 品 明 细分 类 检 索 e x t e n d s e x t e n d s e x t e n d s 注 册 用 户。基于struts2在线交易系统的设计与实现毕业设计(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。