1 / 29
文档名称:

三大框架面试的原理核心内容.ppt

格式:ppt   大小:654KB   页数:29页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

三大框架面试的原理核心内容.ppt

上传人:用户头像没有 2017/7/31 文件大小:654 KB

下载得到文件列表

三大框架面试的原理核心内容.ppt

相关文档

文档介绍

文档介绍:三大框架原理
Struts2
Struts1 与 Struts2有异同
Struts2 的原理
Struts2的使用范围及注意事项
知识扩展
Struts1 与 Struts2异同
,action的一个实例处理所有请求. struts2的action对象为每个请求产生一个实例,没有线程安全问题. struts1的action依赖于servlet api,struts2的action不依赖与容器,允许脱离容器单独测试.
api,,设置属性,调用方法来测试,依赖注入支持是测试更容易. struts1试用ActionForm对象捕获输入,,但是是在重复描述已经存在的Javabean. struts2直接试用action属性作为输入属性,,这种ModelDriven特性简化了tiglib对POJO对象的应用.
,试用JSTL EL,EL有基本对象图遍历功能,但是对集合和索引属性的支持很弱 struts2可以使用JSTL,但是也支持一个更强大和灵活的表达式语言-- Object Graph Notation Language(OGNL)
,struts2试用ValueStack技术,允许试用一系列名称相同但类型不同的属性重用页面
,试用BeanUtils进行类型转换 struts2使用OGNL进行类型转换,提供基本和常用对象的转化器.
,或者通过validator扩展效验 struts2支持通过validate方法和XWork效验框架来进行效验
,但是模块中的所有action必须共享相同的生命周期 struts2支持通过拦截器interceptor stacks为每个action创建不同的生命周期
一个请求在Struts2框架中的处理大概分为以下几个步骤 1 客户端初始化一个指向Servlet容器(例如Tomcat)的请求 2 这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMesh Plugin) 3 接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action 4 如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy 5 ActionProxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action类
6 ActionProxy创建一个ActionInvocation的实例。 7 ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。 8 一旦Action执行完毕,。返回结果通常是(但不总是,也可能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。在表示的过程中可以使用Struts2 框架中继承的标签。在这个过程中需要涉及到ActionMapper   在上述过程中所有的对象(Action,Results,Interceptors,等)都是通过ObjectFactory来创建的。
Filter 与intercept的区别
实现方式:
filter 实现filter接口,声明dofilter方法
Intercept 实现interceptor接口,声明intercept方法
Filter是函数的回调,intercept是通过反射执行
Filter依赖于容器,只能在容器中执行,intercept与容器无关
Filter在加载时声明,intercept通过配置文件方式声明是否过滤
Spring
Spring目的:就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配