struts2之Action配置的各项默认值、result配置的各种试图转发类型及为应用指定多个struts配置文件 1、Action配置的各项默认值 (1)、如果没有为action指定class,默认是ActionSupport。 (2)、如果没有为action指定method,默认执行action中的execute()方法。 (3)、如果没有为action指定result,默认值为success。 2、result配置的各种试图转发类型 <result type="">...</result> 其中type的常用类型有: dispatcher(默认值) ->转发 redirect ->重定向 redirectAction ->重定向的action在别的命名空间下 如:<result type="redirectAction"> <param name="actionName">helloworld</param> <param name="nameSpace">/test</param> </result> plainText ->显示原始文件内容 如:<result type=""> <param name="location">/xxx.jsp</param> <!--指定读取文件的编码--> <param name="charSet">UTF-8</param> </result> 注意:在result中还可以使用${属性名}表达式访问action中的属性,表达式里的属性名对应action中的属性名 如:<result name="success" type="redirect">/index.jsp?username=${username}</result> 3、为应用指定多个struts配置文件 在大部分应用里,随着应用规模的增加,系统中Action数量也大量增加,导致struts.xml配置文件变得非常臃肿。为了避免struts.xml文件过于庞大、臃肿,提高struts.xml文件的可读性,我们可以将一个struts.xml配置文件分解成多个配置文件,然后在struts.xml文件中包含其他配置文件。下面的struts.xml通过<include>元素指定多个配置文件: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <include file="struts-user.xml"/> <include file="struts-order.xml"/> </struts> 通过这种方式,我们就可以将Struts 2的Action按模块配置在多个配置文件中。 以下为模拟案例 HelloWordAction action类
<div class="iteye-blog-content-contain" style="font-size: 14px">
struts2之Action配置的各项默认值、result配置的各种试图转发类型及为应用指定多个struts配置文件
1、Action配置的各项默认值
(1)、如果没有为action指定class,默认是ActionSupport。
(2)、如果没有为action指定method,默认执行action中的execute()方法。
(3)、如果没有为action指定result,默认值为success。
2、result配置的各种试图转发类型
<result type="">...</result>
其中type的常用类型有:
dispatcher(默认值) ->转发
redirect ->重定向
redirectAction ->重定向的action在别的命名空间下
如:<result type="redirectAction">
<param name="actionName">helloworld</param>
<param name="nameSpace">/test</param>
</result>
plainText ->显示原始文件内容
如:<result type="">
<param name="location">/xxx.jsp</param>
<!--指定读取文件的编码-->
<param name="charSet">UTF-8</param>
</result>
注意:在result中还可以使用${属性名}表达式访问action中的属性,表达式里的属性名对应action中的属性名
如:<result name="success" type="redirect">/index.jsp?username=${username}</result>
3、为应用指定多个struts配置文件
在大部分应用里,随着应用规模的增加,系统中Action数量也大量增加,导致struts.xml配置文件变得非常臃肿。为了避免struts.xml文件过于庞大、臃肿,提高struts.xml文件的可读性,我们可以将一个struts.xml配置文件分解成多个配置文件,然后在struts.xml文件中包含其他配置文件。下面的struts.xml通过<include>元素指定多个配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<include file="struts-user.xml"/>
<include file="struts-order.xml"/>
</struts>
通过这种方式,我们就可以将Struts 2的Action按模块配置在多个配置文件中。
以下为模拟案例
HelloWordAction action类
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"struts-2.0.dtd">
<struts>
<!-- 该属性指定需要Struts2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts2处理。
如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。 -->
<constant name="struts.action.extension" value="do,php" />
<!--解决乱码 -->
<constant name="struts.i18n.encoding" value="UTF-8" />
<!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 -->
<constant name="struts.serve.static.browserCache" value="false" />
<!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 -->
<constant name="struts.configuration.xml.reload" value="true" />
<!-- 开发模式下使用,这样可以打印出更详细的错误信息 -->
<constant name="struts.devMode" value="true" />
<!-- 默认的视图主题 -->
<constant name="struts.ui.theme" value="simple" />
<!--<constant name="struts.objectFactory" value="spring" />-->
<!-- 动态方法调用和使用通配符定义 -->
<!--该属性设置Struts2是否支持动态方法调用,该属性的默认值为true。如果需要关闭动态方法调用,则可设置该为false -->
<!--<constant name="struts.enable.DynamicMethodInvocation" value="false" />-->
<!--上传文件的大小设置(这里的大小指的是总大小)-->
<!--<constant name="struts.multipart.maxSize" value="10701096" />-->
<!-- 引入 -->
<include file="helloworld_struts.xml" />
</struts>
<!--注意:Struts2读取到Struts2.xml的内容后,以JavaBean形式存放在内存中。-->
<!--以后Struts2对用户的每次请求处理将使用内存中的数据,而不是每次都读取Struts2.xml文件-->
</div>
相关推荐
本教程重点关注的是Action配置及其默认值,这对于理解和使用Struts2框架至关重要。 在Struts2中,Action类是业务逻辑的执行者,它处理用户请求并返回结果到视图。Action配置主要通过`struts.xml`或`struts....
`struts.xml` 文件是Struts2的核心配置文件之一,主要负责管理和定义应用程序中的Action映射以及相关的Result定义。具体来说,该文件包括以下几个关键部分: 1. **Action 映射**: - 指定每个Action的名称、执行的...
该属性用于指定加载Struts 2配置文件的配置文件管理器,默认值为`org.apache.struts2.config.DefaultConfiguration`,这是Struts 2默认的配置文件管理器。若需要实现自定义的配置管理器,则需创建一个实现了`...
Struts2注解配置教程是指导开发者如何使用Java注解替代传统的XML配置来配置Struts2框架的一个教程系列。本文档主要涵盖了Struts2中注解配置的一些基本知识点以及如何通过注解实现零配置。 ### 注解配置之前 在介绍...
Struts2是一个强大的MVC框架,它为Java Web应用程序提供了模型-视图-控制器的设计模式。在本笔记中,我们将深入探讨Struts2的核心配置文件`struts.xml`及其主要配置元素。 首先,`struts.xml`是Struts2的核心配置...
`struts.xml`是Struts2的核心配置文件,它负责定义动作(Action)、结果(Result)、拦截器(Interceptor)等核心元素,控制着应用程序的流程。以下是一些主要的配置元素: 1. ****: 定义一个包,可以包含多个...
第一部分 Strut 2:一个全新的框架 第1章 Struts 2:现代Web框架 2 1.1 Web应用程序:快速学习 2 1.1.1 构建Web应用程序 2 1.1.2 基础技术简介 3 1.1.3 深入研究 6 1.2 Web应用程序框架 7 1.2.1 什么是框架 7 1.2.2 ...
05_传智播客struts2.1视频教程_Action配置的各项默认值.rar 这个资源可能涵盖了Struts2 Action配置的默认设置,如默认的result类型、参数绑定规则、异常处理策略等。了解这些默认值可以帮助开发者更高效地配置和使用...
2. **结果类型(Result Type)**:Struts2预设了多种结果类型,如`dispatcher`(用于转发或重定向到JSP页面)。如果在Action中没有指定特定的结果类型,`dispatcher`将作为默认值。 3. **包继承**:在Struts2的配置...
"struts2注解必须包"指的是Struts2提供的一系列注解,它们对于简化Struts2应用的配置和增强其功能至关重要。 标题中的"struts2-convention-plugin-2.1.8.1.jar"是Struts2的约定插件(Convention Plugin)的一个特定...
在Struts2框架中,配置文件扮演着至关重要的角色,它不仅管理着应用程序的各种设置,还负责控制流程逻辑。其中,`result`是配置文件中的一个重要概念,主要用于定义控制器执行后返回的视图或执行的操作。`result`有...
Struts2框架提供了四个与Action相关的注解类型,分别为ParentPackage、Namespace、Result和Action。这四个注解类型可以帮助开发者更方便地配置Action,实现零配置,零配置将从基于纯XML的配置转化为基于注解的配置。...
在Struts2中,`struts.xml`是核心配置文件,它定义了应用的架构,包括动作映射、结果类型、拦截器和全局配置等。这篇博客主要探讨的是`struts.xml`中的`global`和`default`配置。 1. **全局配置(Global ...
为了处理文件上传,你需要在Action类中创建一个`File`或`FileItem`类型的属性,并使用Struts2的`@Params`注解来指定对应的表单字段。此外,还需要在struts.xml配置文件中启用文件上传。 2. 文件下载: 文件下载...
当用户通过表单提交数据时,Struts2会尝试将这些请求参数转换为Action类中对应属性的类型。如果默认的转换器无法完成转换,或者需要更复杂的转换逻辑,这时就需要自定义类型转换器。 要创建一个自定义的类型转换器...
7. **国际化与本地化**:Struts2支持多语言环境,相关的资源文件如struts.properties和struts-default.xml等会包含配置信息,定义了框架的行为和默认值。 8. **异常处理**:Struts2提供了一套自定义的异常处理机制...
- Struts2允许动态调用Action方法,无需在配置文件中显式指定每个方法。 7. **OGNL(Object-Graph Navigation Language)** - OGNL用于表达式语言,用于在视图层和模型层之间传递数据,如`...
在Struts2的配置文件中,每个Action都有一个或多个方法与之对应,每个方法可以有不同的Result。这使得我们可以灵活地控制验证失败后的返回页面。同时,Action类还可以继承自ActionSupport,利用其中的validat方法...