XXXXXXX
本科毕业论文
——文献综述
题
目音乐共享平台系统
指导教师
XXX
职称XXX
学生刘汉君XXX专业XXX班级2班
院(系)XXXX完成时间2012年2月26日
1
MVC在J2EE中的应用
摘要:研究了J2EE平台和MVC设计模式思想的基础上,针对销售系统中出现
的系统不易于扩展的问题,开发了基于J2EE和MVC设计模式的销售系统。
关键词:分销系统;J2EE;模型-视图-控制器;EJBAbstract:BasedontheilluminationofthecharacteristicsofB/Sand
C/SstructureandtheanalysisoftheJ2EEplatformanddesigningpatternofMVC,andaimedatsolvingtheproblemofdifficultexpansionindistributionsystem,adistributionsystembasedonJ2EEandMVCdesignpatternisdeveloped.
Keywords:distributionsystem;J2EE;MVC;EJB
引言
销售系统是指利用先进的IT技术对企业物流,资金流,信息流进行全面管理的信息系统。对于销售企业来说,成功地实施销售系统不仅可以降低企业库存,降低销售费用,而且可以提高企业的资金运转速度,从而保证企业的正常运营和快速发展。目前销售系统在我国得到了前所未有的重视,在销售企业中也得到了广泛的应用,各软件厂商及研究机构纷纷推出了自己的销售系统,但是除了用友、金蝶等大型企业信息化软件厂商以外,大部分销售系统不管是从技术上还是从功能上都存在着缺陷。首先,就功能上来说普遍存在功能单一、信息管理范围局限在企业内部、流程固定等缺点;就技术上来说存在软件开发模式陈旧,系统不宜于扩展等缺点。本文针对销售系统的现状,开发了基于J2EE平台和MVC设计模式的销售系统,本系统不仅具有产品配置化、流程定制化、供应链管理、资金流管理等功能特点,而且是一个可扩展、可移植、易维护的高性能应用系统。
MVC设计模式
MVC是Model-View-Controller的简称,即模型-视图-控制器。它强制性的把应用程序的输入、处理和输出分开。MVC把应用程序分为3个模块:模型、视图和控制器,它们分别担负不同的任务,下图显示这几个模块各自的功能以及它们的相互关系:
2
(1)视图:视图是用户看到并与之交互的界面。视图是向用户显示相关数据,并能接受用户的输入数据,但是它并不进行任何实际的业务处理。对于基于请求/响应方式的Web应用,模型位于服务器端,视图位于浏览器端。(2)模型:模型是应用程序的主题部分。模型表示业务数据和业务逻辑。一个模型能为多个视图提供数据。由于同一个模型可以被多个视图重用,所以提高了应用的可重用性。(3)控制器:控制器接受用户的输入并调用模型和视图去完成用户的请求。当Web用户单击Web页面中的提交按钮来发送HTML表单时,控制器接受请求并调用相应的模型组件去处理请求然后调用相应的视图来显示模型返回的数据。MVC的处理过程如下:首先控制器接受用户的请求,并决定应该调用哪个模型来进行处理;然后模型根据用户请求进行相应的业务逻辑处理,并返回数据;最后控制器调用相应的视图来格式化模型返回的数据,并通过视图来呈现给用户。
基于J2EE和MVC设计模式的B/S结构
图4给出了本系统采用的基于J2EE和MVC设计模式的B/S三层架构,如图所示,基于J2EE和MVC设计模式的系统模型以Web浏览器作为客户端,以Web服务器,EJB应用服务器为中间层完成销售系统的事务逻辑,数据层则是传统的大型企业级数据库服务器。三层结构解释如下:(1)客户端:即Web浏览器。该层中包含系统的显示逻辑。它的任务是由Web
3
浏览器向网络上的某一Web服务器提出服务请求,通过验证以后从Web服务器中下载Web层中的静态HTML页面或由JSP动态生成的HTML页面等,并把它显示在Web浏览器上。
(2)中间层:其包含Web服务器层和应用服务器层。①Web服务器层:Web服务器是J2EE体系结构中间层的一个重要组成部分。它在技术上主要是Servlet、JSP以及JavaBean,功能上实现了用户界面的表现。运行在Web层中的Web组件依赖Web容器来支持诸如响应客户请求以及查询EJB组件等功能。②应用服务器层:J2EE使用EJB服务器作为EJB组件的部署环境,在EJB服务器中提供了分布式计算中组件需要的所有服务,例如组件生命周期的管理、数据库连接的管理、分布式事务管理、组件的命名服务、自动容错以及负载的自动均衡能力等。实现业务逻辑的EJB组件可以高效地运行在EJB服务器中支持多客户端的访问。客户端可先向运行在Web服务器上的Servlet发出请求,通过Servlet调用运行在EJB服务器中的EJB组件,以实现复杂的业务逻辑。本销售系统采用BEAWeblogic8.1作为应用服务器。
(3)数据库层:数据库层分布于系统中的数据库服务器上,它存储着销售系统中的业务信息以及包括用户权限等控制信息,如销售机构信息、供应商信息、库存信息等。本系统数据库管理系统采用关系型数据库(DBMS)MYSQL。J2EE的核心技术是EJB组件结构,如图4所示,在本销售系统中采用EJB技术进行销售系统中间层的业务逻辑开发,它可以带来如下好处:开发人员不用考虑诸如事务
4
处理、安全性及线程控制等系统级服务,这些服务都由EJB服务器提供。编写的EJB组件可以部署到网络中不同的EJB服务器中,并且能与CORBA、DCOM等其它类型的组件相交互。使用Java语言编写的EJB组件还具有良好的跨平台性,有利于系统的集成,真正实现了销售系统的分布特性。当销售系统出现新的需求时,开发者可以根据新的需求,编写新的EJB组件以实现新的商务逻辑,再将其组装到原系统中,而并不需要对原系统的核心部分进行修改,有利于系统的扩展。
MVC如何工作
MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。视图视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括MacromediaFlash和象XHTML,XML/XSL,WML等一些标识语言和Webservices.如何处理应用程序的界面变
得越来越有挑战性。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。模型模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusionComponents这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。控制器控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视
5
图来显示返回的数据。
为什么要使用MVC
大部分Web应用程序都是用像ASP,PHP,或者CFML这样的过程化(自PHP5.0版本后已全面支持面向对象模型)语言来创建的。它们将像数据库查询语句这样的数据层代码和像HTML这样的表示层代码混在一起。经验比较丰富的开发者会将数据从表示层分离开来,但这通常不是很容易做到的,它需要精心的计划和不断的尝试。MVC从根本上强制性的将它们分开。尽管构造MVC应用程序需要一些额外的工作,但是它给我们带来的好处是毋庸置疑的。
首先,最重要的一点是多个视图能共享一个模型,现在需要用
上一篇:
系统架构设计师大纲
下一篇:
爱情只不过就是,爱与不爱