知识大全 配置篇值请求处理元素[1]

Posted 属性

篇首语:笛里谁知壮士心,沙头空照征人骨。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 配置篇值请求处理元素[1]相关的知识,希望对你有一定的参考价值。

  对请求进行处理的元素主要有interceptors Action以及Result 下面分别对其进行讲述

   .拦截器配置(interceptors)

  通过使用拦截器 我们可以在action中的方法执行之前先执行一些我们事先定义好了的方法 也可以在action中的方法执行之后立即执行一些我们事先定义好了的方法 在开发的过程中 拦截器将是一个强有力的工具 拦截器有很多很多的功能 如校验 属性封装 安全 日志等等 如下表所示

  表 拦截器功能表

  校验(validation)   检查输入是否正确

  属性封装(property population)   将输入传输和转化为对象的属性

  日志(logging)   记录关于每个action的详细信息

  切面(profiling)   记录action的吞吐量 寻找性能瓶颈(不是很懂)

  我们可以将多个拦截器链接在一起形成一个拦截器栈 比方说一个action不仅要对客户端的资格进行审查 还要记录它自己的行为 那么我们可以将实现这两个功能的拦截器放在一起 形成一个拦截器栈(interceptor stack) 拦截器是以java类的形式实现的 因此每一个拦截器都有一个唯一的类名 为了让对拦截器的参考更加容易 我们可以在框架中为每个拦截器注册一个更简单的名字 下面给出了一个注册拦截器的例子

<interceptors><interceptor name= security class= pany security SecurityInterceptor /><interceptor stack name= secureStack ><interceptor ref name= security /><interceptor ref name= defaultStack /></interceptor stack></interceptors>

  在定义一个拦截器栈的时候 单个的拦截器和拦截器栈可以以任意的顺序混合在一起 struts框架将会按照拦截器在栈里面的顺序调用它们 大多说应用程序都会定义一个默认的拦截器栈 如 <default interceptor ref name= defaultStack /> 默认的拦截器栈会作用于package中的每个action上 当然action还可以定义它自己的本地(局部)栈 如下面例子所示

<action name= VelocityCounter class= apache struts example counter SimpleCounter ><result name= success > </result><interceptor ref name= defaultComponentStack /></action>

   .Action配置

  action mappings是框架中的基本工作单元 框架通过对请求的request路径进行映射来决定由哪个action来处理请求 action mappings能指定一系列的result 异常处理器以及拦截器 action元素的所有属性中只有name属性是必须的 其它属性都是可选的 关于如何从请求路径映射到action在namespace那节中已经说过了 这里就不说了 尽管对于action的命名很灵活 但是action的名字中最好不要出现斜线(/) 点号( ) 破折号(/) 以免出现一些不可预知的错误

  在Action接口中定义了action默认的方法入口 它就是execute方法 但是并不是每个action类都必须实现这个接口 如果action类没有实现这个接口的话 框架将使用反射来寻找一个execute方法 有时候我们的action中可能会包括多个方法入口 并且不同的情况下方法入口不同 例如执行修改操作时我们想进入action的mofify方法 执行增加操作时进入action的add方法 这个时候怎么办呢?我们可以通过指定action元素的method属性来实现 如下所示

<action name= modify class= example CrudAction method= modify >

  如果在action类中没有execute方法 也没有在配置文件中指定其它的方法 框架会抛出异常

  很多时候 多个action mapping会共享一个相同的模式 这个时候我们可以使用通配符方法 还是举例来说 如下所示

<action name= editCrud class= example CrudAction method= edit />

<action name= deleteCrud class= example CrudAction method= delete />

cha138/Article/program/Java/ky/201311/29111

相关参考

知识大全 处理(php-cgi.exe - FastCGI 进程超过了配置的请求超时时限)的问题

处理(php-cgi.exe-FastCGI进程超过了配置的请求超时时限)的问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容

知识大全 struts分发请求的过程与相关配置

    /_struts分发请求的过程与相关配置  按照mvc模式设计出的web层框架其实就是一个大大的servlet  我们可以在webxml文件中将符合某种特征所有请求交给这个Servlet处理 

知识大全 求6000元内电脑台式机组装配置。要求能玩近期内或未来几年内出的大型3D游戏,其他娱乐方面比较强的。请求

求6000元内电脑台式机组装配置。要求能玩近期内或未来几年内出的大型3D游戏,其他娱乐方面比较强的。请求  以下文字资料是由(本站网www.cha138.com)小编为大

知识大全 web.config配置文件中的 元素

  指定需要应用特定的配置设置的资源  配置结构的示例  <configuration>  <location>  <locationpath=pathallowover

知识大全 用定制标签库和配置文件实现对JSP页面元素的访问控制

用定制标签库和配置文件实现对JSP页面元素的访问控制  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 JSF请求处理过程(二) 请求处理过程总览

JSF请求处理过程(二)请求处理过程总览  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  请求处理

知识大全 .NET处理xmlHttp发送异步请求

.NET处理xmlHttp发送异步请求  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  最近正在拜

知识大全 处理GET和POST请求方法问题

PHPWeb开发学习实录:处理GET和POST请求方法问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 Web请求异步处理降低应用依赖风险

Web请求异步处理降低应用依赖风险  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  问题凸现&nb

知识大全 五步解释Struts处理请求的过程

五步解释Struts处理请求的过程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &nb