zoukankan      html  css  js  c++  java
  • struts2 type="redirectAction"重定向 与动态调用方法

    <?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>
        <!-- 创建包default,继承struts-default -->
        <package name="default" extends="struts-default">
            <!-- 名为login的Action,实现类为LoginAction -->
            <action name="login" class="com.action.LoginAction">  
                <!-- redirectAction返回类型 -->  
                <result type="redirectAction">
                    <!-- Action名参数 -->
                       <param name="actionName">userLogin</param>

              <!-- 参数名 -->

            <param name="username">${username}</param>
                       <!-- 命名 空间参数-->
                    <param name="namespace">/user</param>
                </result>  
                <!-- 返回值为error, redirectAction类型,重定向到名为error的Action-->      
                <result name="error" type="redirectAction">error</result>    
                </action>
                <!-- 名为error的Action -->
            <action name="error">
                   <result>/error.jsp</result>
               </action>
        </package>
        <!-- 名为user的Action,命名空间为/user -->
        <package name="user" extends="struts-default" namespace="/user">
           <!--名为userLogin的Action  -->
           <action name="userLogin" class="com.action.UserAction">
               <result>/hello.jsp</result>         
           </action>
        </package>   
    </struts>

    其中hello.jsp 位于webroot 下。${username} 中的username  对应于login中的属性值,

    即由页面传过来的值,而param 中 name="username" 中的username 对应于userLogin中的属性名称,即给该名称的属性赋值。

    在hello.jsp中获取传递过来的属性 就要用到ognl表达式

    <s:property value="username">

    ================================================================

    动态调用方法

    在struts.xml 中增加静态配置

    <constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>

    增加后才可以动态调用方法;

    动态调用方法首先在action得有对应的方法,被调用的方法与默认方法execute()类似

      <action name="login" class="com.action.LoginAction">  
            <result>/result.jsp</result> 

         <result name="add">/add.jsp</result> 

        <result name="update">/update.jsp</result>
       </action>

    对象的请求

    http://127.0.0.1:8080/helloworld/login!update.action

  • 相关阅读:
    每日英语:Yahoo's Rally: Made in China
    【Java线程】Callable和Future
    Throwable和Exception的区别
    Java异常分类
    牛客网上的剑指offer题目
    合并两个排序的链表
    反转链表
    链表中倒数第k个结点
    调整数组顺序使奇数位于偶数前面
    数值的整数次方
  • 原文地址:https://www.cnblogs.com/zhaoleigege/p/5850175.html
Copyright © 2011-2022 走看看