struts2面试题 自己总结

struts2面试题 自己总结

ID:12388478

大小:101.43 KB

页数:11页

时间:2018-07-16

struts2面试题 自己总结 _第1页
struts2面试题 自己总结 _第2页
struts2面试题 自己总结 _第3页
struts2面试题 自己总结 _第4页
struts2面试题 自己总结 _第5页
资源描述:

《struts2面试题 自己总结 》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Struts2面试题1、struts2工作流程Struts2框架本身大致可以分为3个部分:核心控制器FilterDispatcher、业务控制器Action和用户实现的企业业务逻辑组件。核心控制器FilterDispatcher是Struts2框架的基础,包含了框架内部的控制流程和处理机制。业务控制器Action和业务逻辑组件是需要用户来自己实现的。用户在开发Action和业务逻辑组件的同时,还需要编写相关的配置文件,供核心控制器FilterDispatcher来使用。Struts2的工作流程相对于Struts1要简单,与WebWork框架

2、基本相同,所以说Struts2是WebWork的升级版本。基本简要流程如下:1、客户端初始化一个指向Servlet容器的请求;2、这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMeshPlugin)3、接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action4、如果ActionMapper决定需要调用某个Actio

3、n,FilterDispatcher把请求的处理交给ActionProxy5、ActionProxy通过ConfigurationManager询问框架的配置文件,找到需要调用的Action类6、ActionProxy创建一个ActionInvocation的实例。7、ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。8、一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。返回结果通常是(但不总

4、是,也可能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。在表示的过程中可以使用Struts2框架中继承的标签。在这个过程中需要涉及到ActionMapper9、响应的返回是通过我们在web.xml中配置的过滤器10、如果ActionContextCleanUp是当前使用的,则FilterDispatecher将不会清理sreadlocalActionContext;如果ActionContextCleanUp不使用,则将会去清理sreadlocals。2、说下Struts的设计模式MVC模式:web应用程

5、序启动时就会加载并初始化ActionServler。用户提交表单时,一个配置好的ActionForm对象被创建,并被填入表单相应的数据,ActionServler根据Struts-config.xml文件配置好的设置决定是否需要表单验证,如果需要就调用ActionForm的Validate()验证后选择将请求发送到哪个Action,如果Action不存在,ActionServlet会先创建这个对象,然后调用Action的execute()方法。Execute()从ActionForm对象中获取数据,完成业务逻辑,返回一个ActionForw

6、ard对象,ActionServlet再把客户请求转发给ActionForward对象指定的jsp组件,ActionForward对象指定的jsp生成动态的网页,返回给客户。3、拦截器和过滤器的区别1、拦截器是基于java反射机制的,而过滤器是基于函数回调的。2、过滤器依赖于servlet容器,而拦截器不依赖于servlet容器。3、拦截器只能对Action请求起作用,而过滤器则可以对几乎所有请求起作用。4、拦截器可以访问Action上下文、值栈里的对象,而过滤器不能。5、在Action的生命周期中,拦截器可以多次调用,而过滤器只能在容器初

7、始化时被调用一次。4、struts1于struts2的比较1、Action 类:   Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口。  Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去实现常用的接口。Action接口不是必须的,任何有execute标识的POJO对象都可以用作Struts2的Action对象。2、线程模式:    Struts1 Action是单例模式并

8、且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。单例策略限制了Struts1 Action能作的事,并且要在开发时特别小心。Action资源必须是线程安全的或

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。