Struts2使用OGNL进行类型转换。提供基本和常用对象的转换器。
Struts2使用“ValueStack”技术,使taglib能够访问值而不需要把你的页面(view)和对象绑定起来。
Struts2支持通过拦截器堆栈(Interceptor Stacks)为每一个Action创建不同的生命周期。
temp:#ActionContext储存了整个访问周期中的request,session,application
1、FilterDispatcher的处理流程
1、处理HttpServletRequest,如果思上传的请求,对request进行包装
2、查找该请求路径是否有对应的Action,有的话把该路径包装成一个ActionMapping对象
#ActionMapping对象中含有name,method,namespace,params,result等属性(holds the action mapping information)
3、交给Dispatcher类的serviceAction(request, response,servletContext,mapping)方法处理
2、Dispatcher类的处理过程
1、分别实例化几个储存request,session,application的信息的Map对象
3、Struts2中的拦截器
DispatcherFilter拦截器
ActionAutowiringInterceptor拦截器
ParametersInterceptor拦截器
ServletConfigInterceptor拦截器
4、几个辅助接口
SessionAware-通过Map来提供对所有session属性的访问
ServletRequestAware-提供对HttpServletRequest对象的访问
RequestAware-通过Map来提供对所有request属性的访问
ApplicationAware-通过Map来提供对所有application属性的访问
ServletResponseAware-提供对HttpServletREsponse对象的访问
ParameterAware-通过Map来提供所有request String和表单数据的访问
PrincipalAware-提供对PrincipleProxy对象的访问;该对象实现了HttpServletRequest对象的有关pringcile和role的方法,但是它提供了一个 Proxy,因此所有的实现都是独立于Action的。
ServletContextAware-提供对ServletContext对象的访问
5、struts2的扩展自定义拦截器
自定义拦截器实现Interceptor接口或者继承AbstractInterceptor
ActionInvocation对象可以用来访问运行时环境,以及Action本身;上下文(包括了Web应用的请求参数,session参数,用户Local等);Action 的执行结果;还有那些调用Action的方法并判断Action是否已被调用。
6、缩小Action的配置文件的牛X配置
前提:struts.enable.SlashesInActionNames = true;
URL模式:/{module}/{entity}/{action}.action
配置文件:
<action name="*/*/*" method="{3}" class="com.infoq.action.{1}.{2}action">
<result name="view">/{1}/update{2}/jsp</result>
<result name="list">/{1}/list{2}.jsp</result>
</action>
使用超强通配符
分享到:
相关推荐
struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全...
本总结将深入探讨Struts2的核心概念、关键功能和实用技术,以帮助开发者全面理解并熟练运用这一框架。 一、Servlet模板 在Struts2中,Servlet模板是一种处理请求和响应的方式。它通过拦截器链对请求进行处理,然后...
在本项目总结中,我们将深入探讨Struts2的核心特性、工作原理以及如何在实际项目中应用。 一、Struts2框架基础 1. 动态方法调用(Dynamic Method Invocation,DMI):Struts2允许通过URL直接调用Action类的方法,...
【Velocity语法以及整合struts2总结】 Velocity是一个开源的Java模板引擎,它是Apache软件基金会的Jakarta项目的一部分。Velocity将HTML代码与业务逻辑分离,使得开发者可以专注于内容和设计,而不用关心数据如何...
【JSP到Struts2总结】 JSP(Java Server Pages)是基于Java技术的一种服务器端网页编程技术,用于创建跨平台、跨Web服务器的动态网页。JSP网页由HTML、JavaScript、Java程序片段(scriplet)和JSP标记(tag)组成。...
struts2 总结入门学习文档 教你如何白手起家搭建Struts2开发环境、编写第一个struts2应用helloworld、属性介绍、接口、拦截器介绍、struts2标签等。93页
根据提供的文件信息,我们可以整理出关于Struts2框架的一些关键知识点。尽管原文中的信息较为零散且不完整,但还是可以从中提炼出一些有价值的内容。接下来,我们将详细探讨这些知识点。 ### Struts2简介 Struts2...
Struts2是一个强大的MVC(Model-View-Controller)框架,是Java EE应用程序开发中的重要组成部分。它在Struts1.x的基础上进行了大量的改进和优化,提供了更高效、更灵活的架构设计,使得开发者能够更容易地构建和...
本笔记将全面总结Struts2的核心概念、主要功能以及实际开发中的应用。 一、Struts2概述 Struts2是Apache软件基金会下的一个开源项目,它继承了Struts1的优点并解决了其存在的问题,如性能和灵活性。Struts2的核心是...
Struts2是一个强大的MVC框架,它提供了许多功能来简化Web应用开发,包括类型转换、属性访问、文件上传以及拦截器等。以下是基于标题和描述的详细知识点: **一、局部类型转换** 在Struts2中,我们可以自定义类型...
Struts2,servlet模板,反射、xml解析、过滤器,IoC方式