zoukankan      html  css  js  c++  java
  • Structs2动态方法调用

    第一种:指定Method属性(Action比较多)

    <!-- 声明包 -->
    <package name="user" extends="struts-default">

    <!-- 定义action -->

    <action name="first" class="com.sxt.action.UserAction" method="first" >

    <!-- 定义处理成功后的映射页面 -->

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

    <action name="second" class="com.sxt.action.UserAction" method="second" >
    <result name="second">second.jsp</result>
    </action>

    <action name="third" class="com.sxt.action.UserAction" method="third" >
    <result name="third">first.jsp</result>
    </action>

    </package>

    第二种:感叹号方式(需要开启开关)官网不推荐使用这种方式

    (1)Structs2中开启开关和定义Action

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

    <action name="userAction" class="com.sxt.action.UserAction">
    <!-- 定义处理成功后的映射页面 -->
    <result name="add">user_add.jsp</result>
    <result name="update">user_update.jsp</result>
    </action>

    (2)index.jsp中

    <a href="userAction!add">添加用户</a>
    <a href="userAction!update">修改用户</a>

    (3)创建名为UserAction的Action对象

    public class UserAction extends ActionSupport {

      public String add(){

                 return "add";

         }

        public String update(){

                 return "update";

         }

    }

    第三种:通配符方式(官方推荐使用)

    (1)jsp页面中

    <a href="useraddAction">添加用户</a>
    <a href="userupdateAction!">修改用户</a>

    (2)Structs2.xml中定义Action

    <action name="user*Action" class="com.sxt.action.UserAction" method="{1}">
    <!-- 定义处理成功后的映射页面 -->
    <result name="add">user_add.jsp</result>
    <result name="update">user_update.jsp</result>
    </action>

  • 相关阅读:
    不使用C++ 11的整数转字符串
    1090 危险品装箱(25 分)
    C++中vector,set,map自定义排序
    D
    7-2 幼儿园数学题(29 分)
    李白打酒
    C++ string和int相互转换
    1049 数列的片段和(20)(20 分)
    11. 盛最多水的容器
    7. 整数反转
  • 原文地址:https://www.cnblogs.com/hgc-bky/p/5734690.html
Copyright © 2011-2022 走看看