struts2 示例struts.xml解析

<?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">

<!-- START SNIPPET: xworkSample -->
<struts>

    <!-- Some or all of these can be flipped to true for debugging -->

   <--配置常量-->
    <constant name="struts.i18n.reload" value="false" />

   //设置开发模式
    <constant name="struts.devMode" value="true" />

   //设置配置文件重载
    <constant name="struts.configuration.xml.reload" value="false" />

   //设置国际化的basename
    <constant name="struts.custom.i18n.resources" value="globalMessages" />
    <constant name="struts.action.extension" value="action,," />

    <constant name="struts.codebehind.defaultPackage" value="person" />
    <constant name="struts.freemarker.manager.classname" value="customFreemarkerManager" />
    <constant name="struts.serve.static" value="true" />
    <constant name="struts.serve.static.browserCache" value="false" />

  

   <!--包含其他的配置文件-->

 

    <include file="struts-chat.xml" />
   
    <include file="struts-interactive.xml" />

    <include file="struts-hangman.xml" />

    <include file="struts-tags.xml"/>

    <include file="struts-validation.xml" />

    <include file="struts-actionchaining.xml" />

    <include file="struts-ajax.xml" />

    <include file="struts-fileupload.xml" />

    <include file="struts-person.xml" />

    <include file="struts-wait.xml" />

    <include file="struts-jsf.xml" />

    <include file="struts-token.xml" />

    <include file="struts-model-driven.xml" />

    <include file="struts-integration.xml" />

    <include file="struts-filedownload.xml" />

    <include file="struts-conversion.xml" />

    <include file="struts-freemarker.xml" />

    <include file="struts-tiles.xml" />

    <include file="struts-xslt.xml" />

   

   <!--定义默认的包,struts-default再struts2-core-2.0*.jar下-->

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

 

 

    <!--培植拦截器-->
        <interceptors>
            <interceptor-stack name="crudStack">
              <interceptor-ref name="checkbox" />
                <interceptor-ref name="params" />
        <interceptor-ref name="staticParams" />
                <interceptor-ref name="defaultStack" />
            </interceptor-stack>
        </interceptors>

 

 

        <default-action-ref name="showcase" />

 

      <!--配置action-->

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

        <action name="viewSource" class="org.apache.struts2.showcase.source.ViewSourceAction">
            <result>viewSource.jsp</result>
        </action>

        <action name="date" class="org.apache.struts2.showcase.DateAction" method="browse">
            <result name="success">/date.jsp</result>
        </action>

    </package>

  

 

   <!--配置包skill,继承包default,定义包空间/skill-->

    <package name="skill" extends="default" namespace="/skill">
        <default-interceptor-ref name="crudStack"/>

     <!--配置Action-->

        <action name="list" class="org.apache.struts2.showcase.action.SkillAction" method="list">
            <result>/empmanager/listSkills.jsp</result>
            <interceptor-ref name="basicStack"/>
        </action>
        <action name="edit" class="org.apache.struts2.showcase.action.SkillAction">
            <result>/empmanager/editSkill.jsp</result>
            <interceptor-ref name="params" />
            <interceptor-ref name="basicStack"/>
        </action>
        <action name="save" class="org.apache.struts2.showcase.action.SkillAction" method="save">
            <result name="input">/empmanager/editSkill.jsp</result>
            <result type="redirect">edit.action?skillName=${currentSkill.name}</result>
        </action>
        <action name="delete" class="org.apache.struts2.showcase.action.SkillAction" method="delete">
            <result name="error">/empmanager/editSkill.jsp</result>
            <result type="redirect">edit.action?skillName=${currentSkill.name}</result>
        </action>
    </package>

 

 

  <!--定义包employee,继承包default,包空间/employee-->

    <package name="employee" extends="default" namespace="/employee">

 

       //定义默认拦截器
        <default-interceptor-ref name="crudStack"/>

        <action name="list" class="org.apache.struts2.showcase.action.EmployeeAction" method="list">
            <result>/empmanager/listEmployees.jsp</result>
            <interceptor-ref name="basicStack"/>
        </action>

       

      //在配置文件中使用通配符
        <action name="edit-*" class="org.apache.struts2.showcase.action.EmployeeAction">
        <param name="empId">{1}</param>
            <result>/empmanager/editEmployee.jsp</result>
            <interceptor-ref name="crudStack"><param name="validation.excludeMethods">execute</param></interceptor-ref>
        </action>
        <action name="save" class="org.apache.struts2.showcase.action.EmployeeAction" method="save">
            <result name="input">/empmanager/editEmployee.jsp</result>
            <result type="redirect">edit-${currentEmployee.empId}.action</result>
        </action>
        <action name="delete" class="org.apache.struts2.showcase.action.EmployeeAction" method="delete">
            <result name="error">/empmanager/editEmployee.jsp</result>
            <result type="redirect">edit-${currentEmployee.empId}.action</result>
        </action>
    </package>

</struts>

<!-- END SNIPPET: xworkSample -->

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值