zoukankan      html  css  js  c++  java
  • struts2学习笔记--struts.xml配置文件详解

    这一节主要讲解struts2里面的struts.xml的常用标签及作用:

    •  解决乱码问题

      <constant name="struts.i18n.encoding" value="utf-8"/>      //设置编码格式为utf-8
    •  自定义扩展名

      <constant name="struts.action.extension" value="action,,wang"/> //struts默认扩展名是action,可以自定义
    • 设置开发模式

      <constant name="struts.devMode" value="true"/>  //打开开发者模式,可在出错时提供友好的错误信息提示      

    以上参数都是在struts.xml中配置的,我们也可以在src目录下新建一个struts.properties文件,上面三个配置都可以写成下面这样,能实现同样的作用:

    struts.i18n.encoding=utf-8
    struts.action.extension=action,,wang
    struts.devMode=true
    • 设置配置文件修改后自动加载(开发时使用)

      <constant name="struts.configuration.xml.reload" value="true"/> //修改struts.xml后,无需重启Tomcat
    • 引入其他配置文件(多在团队协作开发使用)

      <include  file="com/wang/struts/user.xml"/>
    •  package包(着重介绍)

      <?xml version="1.0" encoding="UTF-8" ?>
      <!DOCTYPE struts PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
          "http://struts.apache.org/dtds/struts-2.3.dtd">
      
      <struts>
          <!-- package属性介绍
              1.name      ->包的名称,可自定义,可以配置多个包
              2.namespace ->命名空间,不同模块可以指定不同的空间,必须以"/"开头
              3.extends   -> 继承,值是直接或间接的继承struts-default,它也是一个xml文件
            -->
          <package name="login" namespace="/user" extends="struts-default">
          <!-- action 属性介绍
              1.name   ->url请求名,不需要加后缀(.action)
              2.class  ->处理url对应的java类,class要求报名加类名
              3.method ->配置处理请求的方法,默认为execute;方法必须是public String修饰的
           -->
              <action name="login" class="com.wang.action.LoginAction" method="execute">
              <!-- result属性介绍
                  1.name:->匹配请求方法的返回值,默认是success
                  2.type:->结果处理类型,默认是dispatcher转发
                       chain:  链接到下一个action,执行完actionA后执行actionB<result type="chain">exit</result>
                       redirect: 重定向到jsp页面
                       redirectAction:  重定向到下一个action
               -->
              
                  <result name="success">/succ.jsp</result>
                  <result name="error">/login.jsp</result>
              </action>
          </package>
      </struts>
    • 配置默认执行的class(package子标签,置于action标签之上)

      <!-- 当action标签中没有写class属性时,默认执行这个class-->
      <default-class-ref class="com.wang.action.LoginAction"/>
    • 配置默认的action(package子标签,置于action标签之上)

      <!--当请求的action不存在时,执行默认的default-->
      <
      default-action-ref name="default"/> <action
      name="default"> <result>/index.jsp</result> </action>
    • 配置全局结果集(package子标签,置于action标签之上)

      <global-results>
          <!-- 所有的aciton中,只要action里面的方法返回了comehere字符串时,就都跳到这个a.jsp页面来 -->
          <result name="comehere">/a.jsp</result>
      </global-results>

      

  • 相关阅读:
    nginx -s reload 时报错 [error] open() "/run/nginx.pid" failed (2: No such file or directory)
    系统调用(四):SSDT
    系统调用(三): 分析KiFastCallEntry(二)
    系统调用(二): 分析KiFastCallEntry(一)
    系统调用(一): 重写WriteProcessMemory
    CVE-2009-0927分析
    CVE-2008-0015分析
    CVE-2006-4868分析
    在linux上使用impdp命令时提示ORA-12154: TNS:could not resolve the connect identifier specified的问题
    破解myeclipse10失败的一个奇葩原因
  • 原文地址:https://www.cnblogs.com/fingerboy/p/5183663.html
Copyright © 2011-2022 走看看