struts2之Action配置的各项默认值、result配置的各种试图转发类型及为应用指定多个

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>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值