zoukankan      html  css  js  c++  java
  • Struts2 中的配置文件 package name 、namespace 以及 对象方法调用

    在struts2 struts.xml 配置中
    <struts>
      <package name="caixuedong" extends="struts-default" namespace="/core">
        <action name="greeting" class="com.tarena.struts2.action.GreetingAction" >
          <result name="success">/core/greeting.jsp </result>
        </action>
      </package>
    </struts>

    1.package中的name只是一个标识,你可以随意命名,可以用作继承用 如  
       <package name="struts-default" abstract="true"></package>
       extends="default";
    2.action中的name对应你页面中的一个action跳转,比如你页面有个表单提交: <form action="/core/greeting" />  greeting 对应struts.xml中action里的name
    3.namespace是用于区分包中相同的类,如果没写,说明该包为默认空间,如果写了(如你的这个例子),那么就说明包caixuedong的空间为/core。

    ============================================================
    调用action 中的方法
    配置方法一:直接配置方法路径

    <package name="user"  namespace="/user"  extends="struts-default">  
      <action name="save"  class="com.puckasoft.web.action.UserAction"    method="saveUser"></action
      <action name="update"  class="com.puckasoft.web.action.UserAction"    method="updateUser"></action
      <action name="delete"  class="com.puckasoft.web.action.UserAction"    method="deleteUser"></action>
      <action name="show"  class="com.puckasoft.web.action.UserAction"    method="showUser"></action>
      
    </package

       用户添加 /user/save.action
       用户更新 /user/update.action
       用户删除 /user/delete.action
       用户查看 /user/show.acton

    配置方法二: action动态方法调用DMI
      
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />  
      <package name="user"  namespace="/user"  extends="struts-default"
        <action name="index"  class="com.puckasoft.web.action.UserAction"/>  
      </package>

      运行路径格式:包的命名空间/Action的名字!Action类中定义的方法名
       用户添加 /user/index!saveUser.action
       用户更新 /user/index!updateUser.action
       用户删除 /user/index!deleteUser.action
       用户查看 /user/index!showUser.acton

    配置方法三:使用通配符定义Action
    使用通配符,将配置量降到最低。
    在action元素的name属性中可以使用*通配符,它可以匹配除了/以外的多个连续字符,在action元素的class和method属性以及 result元素中可以引用*通配符在访问期间实际匹配的内容

    <package name="user"  namespace="/user"  extends="struts-default">  
      <action name="*" class="com.puckasoft.web.action.UserAction" method="{1}User"/> 
    </package

    运行路径路径格式: 包的命名空间/Action的名字

       用户添加 /user/save.action
       用户更新 /user/update.action
       用户删除 /user/delete.action
       用户查看 /user/show.acton

     

     

     

  • 相关阅读:
    (转)交换两个变量的值,不使用第三个变量的四种法方
    Java权威编码规范
    Git的安装和设置
    ActiveMQ简单入门
    JMS术语
    求助 WPF ListViewItem样式问题
    初步探讨WPF的ListView控件(涉及模板、查找子控件)
    圆角button
    用Inno Setup来解决.NetFramework安装问题
    [!!!!!]Inno Setup教程-常见问题解答
  • 原文地址:https://www.cnblogs.com/leonkobe/p/5672567.html
Copyright © 2011-2022 走看看