JavaEE框架概论优质PPT.ppt
《JavaEE框架概论优质PPT.ppt》由会员分享,可在线阅读,更多相关《JavaEE框架概论优质PPT.ppt(70页珍藏版)》请在冰豆网上搜索。
![JavaEE框架概论优质PPT.ppt](https://file1.bdocx.com/fileroot1/2022-10/7/7e0bea87-0df0-489b-b57f-9de9714ef6da/7e0bea87-0df0-489b-b57f-9de9714ef6da1.gif)
,为什么选用框架?
框架是一个应用程序的半成品。
框架提供了可在应用程序之间共享的可覆用的公共结构。
成熟的框架,帮你完成基础工作,你只需要集中精力完成系统的业务逻辑设计。
框架一般是成熟,稳健的,处理系统很多细节问题,比如,事务处理,安全性,数据流控制等问题。
多人使用,结构好,扩展性好,不断升级,享受别人升级代码带来的好处。
DontReinventtheWheel!
客户端:
AjaxFlexExtjsJquery服务器端Web层:
Struts、Struts2、JSF、SpringMVC资源访问层:
Hibernate、iBatis(MyBatis)整合:
Spring,分层看框架,RIA含义,客户端-RIA是趋势,RIA具有的桌面应用程序的特点:
在消息确认和格式编排方面提供互动用户界面;
在无刷新页面之下提供快捷的界面响应时间;
提供通用的用户界面特性,如拖放式(draganddrop)以及在线和离线操作能力。
RIA具有的Web应用程序的特点:
立即部署、跨平台、采用逐步下载来检索内容和数据以及可以充分利用被广泛采纳的互联网标准。
RIA具有通信的特点:
实时互动的声音和图像。
AJAX是一种实现RIA的方案Ajax是“AsynchronousJavaScriptandXML”的简称,即异步的JavaScript和XMLAjax就是能够在Web浏览器中实现与桌面应用类似客户端的技术Ajax并不能算一个新的技术,而是几种成熟技术的使用技巧Ajax技术主要包含四个组件,即JavaScript、CSS、DOM以及XMLHttpRequest对象,客户端-Ajax概述,在Ajax技术中,JavaScript起着至关重要的作用,贯穿始终JavaScript是Internet上最流行的脚本语言,往往直接插入到HTML中JavaScript可以定义变量、函数,支持事件驱动的模式JavaScript中定义了很多简单对象,如字符串、日期等JavaScript中定义了很多HTMLDOM对象,如document等,Ajax-JavaScript语言,XMLHttpRequest是Ajax技术的核心对象,使用Ajax都是从创建XMLHttpRequest对象开始XMLHttpRequest对象是一个浏览器内部的对象,可以用来发送HTTP请求并接收HTTP响应XMLHttpRequest对象中封装了一系列的属性和方法status属性responseText属性responseXML属性onreadystatechange属性open方法send方法,AJAX-XMLHttpRequest对象,Ajax技术中,通常使用DOMAPI操纵客户端页面DOM是DocumentObjectModel的简称,即文档对象模型,是W3C组织推荐的处理结构化文档标准编程接口DOM可以分为三部分,分别是核心部分、HTML部分以及XML部分DOM独立于编程语言,很多种语言都实现了DOMAPI,在Ajax技术中,主要使用JavaScript语言使用DOM。
AJAX-文档对象模型DOM,HTMLDOM是专门用来针对HTML文档编程的APIHTMLDOM将HTML文档看成一棵节点树,HTML文档的每个部分都是树上的一个节点HTMLDOM中定义了一系列的HTMLDOM对象,用来表示HTML文档中的元素,包括document、form、button等任何一个HTML文档被浏览器加载后,都会成为一个document对象,在JavaScript脚本语言中,可以直接使用document对象访问HTML中的任何元素,AJAX-HTMLDOM,与HTMLDOM类似,XMLDOM定义了所有XML元素的对象和属性,以及访问它们的方法XMLDOM将XML文档看做一棵节点树,文档中的每一个元素都是一个节点在Ajax技术中,可以直接使用XMLHttpRequest的responseXML属性直接封装服务器端返回的XML文档,进一步调用XMLDOM的方法和属性解析XML,AJAX-XMLDOM,jQuery是Ajax的一个框架,设计思想简洁,以选择DOM对象开始jQuery是一款免费且开放源代码的JavaScript代码库链式语法:
$(p.surprise).addClass(ohmy).show(slow);
CSS1-3选择器:
支持CSS选择器选定DOM对象。
跨浏览器:
支持InternetExplorer6+、Opera9+、Firefox1.5+、Safari2+简单:
较其它JavaScript库更易于入门。
子项目jQueryUI:
基于jQuery的用户界面库,包括菜单、工具条、拖放、缩放、对话框、表格排序等多个组件。
jQueryFX:
基于jQuery的网页特效库,包括元素渐进式显示、隐藏等功能。
AJAX框架-jQuery,背后强大的支持:
IBM、Sun、BEA等功能的强大,扩展了DHTML的能力支持与浏览器Back/Forward按钮的集成Chart组件,可以方便地在浏览器端生成图表GoogleMaps、Yahoo!
Maps组件,方便开发Mashup应用学习困难,页面大量使用dojo属性,侵入性大,Ajax框架-dojo,有较好的性能面向对象和组件化的思想文档完整,规范,方便所有的组件(widgets)都可直接使用,而无需进行设置,Ajax框架-Ext,JavaFX:
JavaFX是Sun公司2007年发布的,准备替代Applet的一种技术或者平台,人们称它为“下一代Applet”Flex:
Flex一般指AdobeFlex,是一个高效、免费的开放源框架,可用于构建具有表现力的Web应用程序,这些应用程序利用AdobeFlashPlayer和AdobeAIR,运行时跨浏览器、桌面和操作系统实现一致的部署。
SilverLight:
Silverlight就是微软用来进军RIA市场的武器,RIA其他方案,技术架构,JavaEE最为流行的框架是SSH(Spring+Struts+Hibernate),然后发展到SSH2,SSI(Spring+Struts+ibatis)SSI2(Struts2+Spring+mybatis),技术架构,Spring(MVC)+Hibernate+ExtJS,MVC,技术架构,Spring(MVC)+Hibernate+ExtJS,MVC,技术架构,SHE,S.H.E,S是Selina任家萱,代表温柔H是Hebe田馥甄,代表自信E是Ella陈嘉桦,代表勇气,温柔:
非入侵式,轻量级,自信:
对象持久化,多种关系数据库,勇气:
后台无关、前台兼容、外表华丽,Struts2与Struts1本质上没有太大联系Struts1最初是ApacheJakarta项目的一部分,后来作为一个开源的MVC框架存在Struts2是从WebWork框架上发展起来的,与Struts1没有直接关系,Web层框架-Struts2概述,MVC设计思想,MVC即Model-View-Controller,把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。
MVC设计思想,MVC是一种复合模式,结合了观察者模式、策略模式、组合模式、适配器模式。
模型使用观察者模式,以便观察者更新,同时保持两者之间的解耦。
控制器是视图的策略,视图使用组合模式实现用户界面。
适配器模式用来将模型适配成符合现有视图和控制器的需要的模型。
这些模式合作把MVC模式的三层解耦。
MVC设计思想,视图(View)代表用户交互界面,对于Web应用来说,可以是HTML,也可能是jsp、XML和Applet等。
一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。
业务流程的处理交予模型(Model)处理。
比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。
模型(Model):
是业务的处理以及业务规则的制定。
模型接受视图请求的数据,并返回最终的处理结果。
业务模型的设计是MVC最主要的核心。
MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,抽象与具体不能隔得太远,也不能太近。
MVC并没有提供模型的设计方法,而只是组织管理这些模型,以便于模型的重构和提高重用性。
业务模型还有一个很重要的模型那就是数据模型。
数据模型主要指实体对象的数据保存(持续化)。
比如将一张订单保存到数据库,从数据库获取订单。
我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。
MVC设计思想,控制(Controller)可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。
划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。
控制层并不做任何的数据处理。
例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。
因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
MVC设计思想,Jspmodel1架构,Model1的基础是JSP文件,它由一些相互独立的JSP文件和其他一些JavaClass组成。
这些JSP从HTTPRequest中获得所需要的数据,处理业务逻辑,然后将结果通过Response返前端浏览器。
Model1的应该说是唯一的好处是“简单”,可以大大加快系统的开发进度。
它把表现层和业务逻辑层柔和在一起,不利于以后的维护工作以及开发角色的分配,所以这种模式只能适合于小的系统开发。
Jspmodel2架构,Model2采用面向对象技术实现MVC模式从而扩展JSP/Servlet的模式。
Model2是MVC在Web上的应用。
一个Model2规范实现的Web框架,一个Model2规范实现的Web框架,视图层采用JSP实现;
控制层采用Servlet实现,整个框架采用同一个Servlet,以实现请求的中转;
模型层采用Java实现,主要决定用来做什么;
在模型层后添加了一个DAO,目的是将决定做什么和具体怎么做分开。
整个Web框架大致的流程是:
首先客户端发送请求,提交JSP页面给中转器(Servlet);
中转器根据客户的请求,选择相应的模型层,即Logic,Logic进行相应的逻辑处理;
如果需要使用数据库,则通过DAO进行相应的数据库操作。
Struts1的缺点:
1.支持的表示层技术单一:
S