zoukankan      html  css  js  c++  java
  • struts xml中的result的类型、全局结果集、异常mapping、继承

    例子:

    <?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>
        <constant name="struts.devMode" value="true" />
        <package name="resultTypes" namespace="/r" extends="struts-default">
            <action name="r1">
                <result type="dispatcher">/r1.jsp</result><!-- 默认,转发,地址栏不变,请求一次服务器,只能是到视图 -->
            </action>
           
            <action name="r2">
                <result type="redirect">/r2.jsp</result><!-- 重定向,地址栏变,请求两次次服务器,只能是到视图 -->
            </action>
           
            <action name="r3">
                <result type="chain">r1</result><!-- 转发,访问本namespace的Action -->
            </action>
           
            <action name="r4">
                <result type="redirectAction">r2</result><!-- 访问本namespaceAction -->
            </action>

        </package>
    </struts>


    访问其他namespace:

    <package name="public" extends="struts-default">

    <!-- Chain creatAccount to login, using the default parameter -->

       <action name="createAccount" class="...">

          <result type="chain">login</result>

       </action>

       <action name="login" class="...">

          <!-- Chain to another namespace -->

          <result type="chain">

             <param name="actionName">dashboard</param>

             <param name="namespace">/secure</param>

          </result>

        </action>

    </package>

    <package name="secure" extends="struts-default" namespace="/secure">

    <action name="dashboard" class="...">

    <result>dashboard.jsp</result>

    </action>

    </package>

    global-results可以让同一个namespace和继承该namespace的namespace共享其result的name,

    extends(继承)一起,常用来定义大家都用的results。

    <?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>
        <constant name="struts.devMode" value="true" />
        <package name="user" namespace="/user" extends="struts-default">
           
           
            <global-results>
                <result name="mainpage">/main.jsp</result>
            </global-results>

           
            <action name="index">
                <result>/index.jsp</result>
            </action>
           
            <action name="user" class="com.bjsxt.struts2.user.action.UserAction">
                <result>/user_success.jsp</result>
                <result name="error">/user_error.jsp</result>
            </action>       
        </package>
       
        <package name="admin" namespace="/admin" extends="user">
            <action name="admin" class="com.bjsxt.struts2.user.action.AdminAction">
                <result>/admin.jsp</result>
            </action>
        </package>
    </struts>

     全局异常:

      <package name="bbs2009_default" extends="struts-default">
     
      <global-results>
          <result name="error">/error.jsp</result>
         </global-results>
         
       <global-exception-mappings>
          <exception-mapping result="error" exception="java.lang.Exception"></exception-mapping>
         </global-exception-mappings>
         
         
         
     </package>


    Result类型(type)列举

    1. dispatcher
    2. redirect
    3. chain
    4. redirectAction
    5. freemarker
    6. httpheader
    7. stream
    8. velocity
    9. xslt
    10. plaintext
    11. tiles
  • 相关阅读:
    论球迷和程序员
    山哥,你是怎么提高设计能力的?
    一个想休息的线程:JVM到底是怎么处理锁的?怎么不让我阻塞呢?
    由“面经”引发的思考
    99%的创业公司都不值得加入
    大牛是怎么炼成的?
    RMQ问题 与众不同 尚未攻克
    YbtOj例题:二叉堆3 龙珠游戏
    离散化模板
    YbtOJ练习:广搜 3 追捕小狗
  • 原文地址:https://www.cnblogs.com/flying607/p/3469639.html
Copyright © 2011-2022 走看看