天天看點

Struts2的基本配置

(4)    struts.xml檔案結構

struts.xml檔案時整個Struts2架構的核心,下面提供了一個最完整的struts.xml檔案,這個檔案沒有任何實際意義,僅僅是一個struts.xml檔案的示範:

view plaincopy to clipboardprint?

01.<?xml version="1.0" encoding="UTF-8"?> 

02.<!-- 下面指定Struts2配置檔案的DTD資訊 --> 

03. <!DOCTYPE struts PUBLIC  

04.    "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"  

05.    "http://struts.apache.org/dtds/struts-2.1.dtd"> 

06.    <struts> 

07.    <!-- 下面的元素可以出現0次也可以無限多次 --> 

08.    <constant name="" value=""/> 

09.    <!-- 下面的元素可以出現0次也可以無限多次 --> 

10.    <bean type="" name="" class="" scope="" static="" optional=""/> 

11.    <!-- 下面的元素可以出現0次也可以無限多次 --> 

12.    <include file=""/> 

13.    <!-- package元素師Struts配置檔案的核心,該元素可以出現0此,或者無限多次 --> 

14.    <package name="必須要填寫的包" extends="" namespace="" abstract=""> 

15.         <!-- 該元素可以出現,也可以不出現,最多出現一次 --> 

16.         <result-types> 

17.             <!-- 該元素必須要出現,可以出現多次 --> 

18.             <result-type name="" class="" default="true|false"> 

19.                 <!-- 下面的元素可以出現0次,也可以出現無限多次 --> 

20.                 <param name="參數名">參數值</param> 

21.             </result-type> 

22.         </result-types> 

23.         <!-- 該元素可以出現,也可以不出現,最多出現一次 --> 

24.         <interceptors> 

25.             <!-- 該元素的interceptor元素和interceptor-stack至少出現其中之一,也可以兩者都出現 --> 

26.             <!-- 下面的元素可以出現0次,也可以出現無限多次 --> 

27.             <interceptor name="" class=""> 

28.                  <!-- 下面的元素可以出現0次,也可以出現無限多次 --> 

29.                  <param name="參數名   ">參數值</param> 

30.             </interceptor> 

31.             <!-- 下面元素可以出現0次,也可以出現無限多次 --> 

32.             <interceptor-stack name=""> 

33.                  <!-- 該元素必須出現,可以出現無限多次 --> 

34.                  <interceptor-ref name=""> 

35.                       <!-- 該元素可以出現0次,也可以出現無限多次 --> 

36.                       <param name="參數名">參數值</param> 

37.                  </interceptor-ref> 

38.             </interceptor-stack> 

39.         </interceptors> 

40.         <!-- 下面的元素可以出現0次也可以無限多次 --> 

41.         <default-interceptor-ref name=""> 

42.             <!-- 下面的元素可以出現0次也可以無限多次 --> 

43.             <param name="參數名">參數值</param> 

44.         </default-interceptor-ref> 

45.         <!-- 下面的元素可以出現0次也可以無限多次 --> 

46.         <default-action-ref name=""> 

47.             <!-- 下面的元素可以出現0次也可以無限多次 --> 

48.             <param name="參數名">參數值</param> 

49.         </default-action-ref> 

50.         <global-results> 

51.              <!-- 該元素必須出現,可以出現無限多次 --> 

52.              <result name="" type=""> 

53.                   <!-- 下面的元素可以出現0次也可以無限多次 --> 

54.                   <param name="參數名">參數值</param> 

55.              </result> 

56.         </global-results> 

57.         <!-- 下面的元素可以出現0次也可以無限多次 --> 

58.         <global-exception-mappings> 

59.              <!-- 該元素必須出現,可以出現無限多次 --> 

60.              <exception-mapping name="" result="" exception=""> 

61.                   <!-- 下面的元素可以出現0次也可以無限多次 --> 

62.                   <param name="參數名">參數值</param> 

63.              </exception-mapping> 

64.         </global-exception-mappings> 

65.         <action name="" class="" method="" converter=""> 

66.              <param name=""></param> 

67.              <result name="" type=""> 

68.                   <param name=""></param> 

69.              </result> 

70.              <interceptor-ref name=""> 

71.                  <param name=""></param> 

72.              </interceptor-ref> 

73.              <exception-mapping name="" result="" exception=""> 

74.                  <param name=""></param> 

75.              </exception-mapping> 

76.         </action> 

77.    </package> 

78.    </struts> 

<?xml version="1.0" encoding="UTF-8"?>

<!-- 下面指定Struts2配置檔案的DTD資訊 -->

 <!DOCTYPE struts PUBLIC

 "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"

 "http://struts.apache.org/dtds/struts-2.1.dtd">

 <struts>

 <!-- 下面的元素可以出現0次也可以無限多次 -->

 <constant name="" value=""/>

 <!-- 下面的元素可以出現0次也可以無限多次 -->

 <bean type="" name="" class="" scope="" static="" optional=""/>

 <!-- 下面的元素可以出現0次也可以無限多次 -->

 <include file=""/>

 <!-- package元素師Struts配置檔案的核心,該元素可以出現0此,或者無限多次 -->

 <package name="必須要填寫的包" extends="" namespace="" abstract="">

      <!-- 該元素可以出現,也可以不出現,最多出現一次 -->

      <result-types>

          <!-- 該元素必須要出現,可以出現多次 -->

          <result-type name="" class="" default="true|false">

              <!-- 下面的元素可以出現0次,也可以出現無限多次 -->

              <param name="參數名">參數值</param>

          </result-type>

      </result-types>

      <!-- 該元素可以出現,也可以不出現,最多出現一次 -->

      <interceptors>

          <!-- 該元素的interceptor元素和interceptor-stack至少出現其中之一,也可以兩者都出現 -->

          <!-- 下面的元素可以出現0次,也可以出現無限多次 -->

          <interceptor name="" class="">

               <!-- 下面的元素可以出現0次,也可以出現無限多次 -->

               <param name="參數名 ">參數值</param>

          </interceptor>

          <!-- 下面元素可以出現0次,也可以出現無限多次 -->

          <interceptor-stack name="">

               <!-- 該元素必須出現,可以出現無限多次 -->

               <interceptor-ref name="">

                    <!-- 該元素可以出現0次,也可以出現無限多次 -->

                    <param name="參數名">參數值</param>

               </interceptor-ref>

          </interceptor-stack>

      </interceptors>

      <!-- 下面的元素可以出現0次也可以無限多次 -->

      <default-interceptor-ref name="">

          <!-- 下面的元素可以出現0次也可以無限多次 -->

          <param name="參數名">參數值</param>

      </default-interceptor-ref>

      <!-- 下面的元素可以出現0次也可以無限多次 -->

      <default-action-ref name="">

          <!-- 下面的元素可以出現0次也可以無限多次 -->

          <param name="參數名">參數值</param>

      </default-action-ref>

      <global-results>

           <!-- 該元素必須出現,可以出現無限多次 -->

           <result name="" type="">

                <!-- 下面的元素可以出現0次也可以無限多次 -->

                <param name="參數名">參數值</param>

           </result>

      </global-results>

      <!-- 下面的元素可以出現0次也可以無限多次 -->

      <global-exception-mappings>

           <!-- 該元素必須出現,可以出現無限多次 -->

           <exception-mapping name="" result="" exception="">

                <!-- 下面的元素可以出現0次也可以無限多次 -->

                <param name="參數名">參數值</param>

           </exception-mapping>

      </global-exception-mappings>

      <action name="" class="" method="" converter="">

           <param name=""></param>

           <result name="" type="">

                <param name=""></param>

           </result>

           <interceptor-ref name="">

               <param name=""></param>

           </interceptor-ref>

           <exception-mapping name="" result="" exception="">

               <param name=""></param>

           </exception-mapping>

      </action>

 </package>

 </struts>

上面的struts.xml配置檔案是一個非常全面的配置檔案,包含了Struts2的全部配置元素.

view plaincopy to clipboardprint?

01.<?xml version="1.0" encoding="UTF-8"?> 

02.<!-- START SNIPPET: strutsDtd --> 

03.<!--  

04.   Struts configuration DTD.  

05.   Use the following DOCTYPE  

06. 

07.   <!DOCTYPE struts PUBLIC  

08.    "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"  

09.    "http://struts.apache.org/dtds/struts-2.1.dtd"> 

10.--> 

11. 

12.<!ELEMENT struts ((package|include|bean|constant)*, unknown-handler-stack?)> 

13. 

14.<!ELEMENT package (result-types?, interceptors?, default-interceptor-ref?, default-action-ref?, default-class-ref?, global-results?, global-exception-mappings?, action*)> 

15.<!ATTLIST package  

16.    name CDATA #REQUIRED  

17.    extends CDATA #IMPLIED  

18.    namespace CDATA #IMPLIED  

19.    abstract CDATA #IMPLIED  

20.    externalReferenceResolver NMTOKEN #IMPLIED  

21.> 

22. 

23.<!ELEMENT result-types (result-type+)> 

24.<!ELEMENT result-type (param*)> 

25.<!ATTLIST result-type  

26.    name CDATA #REQUIRED  

27.    class CDATA #REQUIRED  

28.    default (true|false) "false"  

29.> 

30. 

31.<!ELEMENT interceptors (interceptor|interceptor-stack)+> 

32.<!ELEMENT interceptor (param*)> 

33.<!ATTLIST interceptor  

34.    name CDATA #REQUIRED  

35.    class CDATA #REQUIRED  

36.> 

37. 

38.<!ELEMENT interceptor-stack (interceptor-ref*)> 

39.<!ATTLIST interceptor-stack  

40.    name CDATA #REQUIRED  

41.> 

42. 

43.<!ELEMENT interceptor-ref (param*)> 

44.<!ATTLIST interceptor-ref  

45.    name CDATA #REQUIRED  

46.> 

47. 

48.<!ELEMENT default-interceptor-ref (#PCDATA)> 

49.<!ATTLIST default-interceptor-ref  

50.    name CDATA #REQUIRED  

51.> 

52. 

53.<!ELEMENT default-action-ref (#PCDATA)> 

54.<!ATTLIST default-action-ref  

55.    name CDATA #REQUIRED  

56.> 

57. 

58.<!ELEMENT default-class-ref (#PCDATA)> 

59.<!ATTLIST default-class-ref  

60.    class CDATA #REQUIRED  

61.> 

62. 

63.<!ELEMENT global-results (result+)> 

64.<!ELEMENT global-exception-mappings (exception-mapping+)> 

65.<!ELEMENT action (param|result|interceptor-ref|exception-mapping)*> 

66.<!ATTLIST action  

67.    name CDATA #REQUIRED  

68.    class CDATA #IMPLIED  

69.    method CDATA #IMPLIED  

70.    converter CDATA #IMPLIED  

71.> 

72. 

73.<!ELEMENT param (#PCDATA)> 

74.<!ATTLIST param  

75.    name CDATA #REQUIRED  

76.> 

77. 

78.<!ELEMENT result (#PCDATA|param)*> 

79.<!ATTLIST result  

80.    name CDATA #IMPLIED  

81.    type CDATA #IMPLIED  

82.> 

83. 

84.<!ELEMENT exception-mapping (#PCDATA|param)*> 

85.<!ATTLIST exception-mapping  

86.    name CDATA #IMPLIED  

87.    exception CDATA #REQUIRED  

88.    result CDATA #REQUIRED  

89.> 

90. 

91.<!ELEMENT include (#PCDATA)> 

92.<!ATTLIST include  

93.    file CDATA #REQUIRED  

94.> 

95. 

96.<!ELEMENT bean (#PCDATA)> 

97.<!ATTLIST bean  

98.    type CDATA #IMPLIED  

99.    name CDATA #IMPLIED  

100.    class CDATA #REQUIRED  

101.    scope CDATA #IMPLIED  

102.    static CDATA #IMPLIED  

103.    optional CDATA #IMPLIED  

104.> 

105. 

106.<!ELEMENT constant (#PCDATA)> 

107.<!ATTLIST constant  

108.    name CDATA #REQUIRED  

109.    value CDATA #REQUIRED  

110.> 

111. 

112.<!ELEMENT unknown-handler-stack (unknown-handler-ref*)> 

113.<!ELEMENT unknown-handler-ref (#PCDATA)> 

114.<!ATTLIST unknown-handler-ref  

115.    name CDATA #REQUIRED  

116.> 

本文來自CSDN部落格,轉載請标明出處:http://blog.csdn.net/ziwen00/archive/2009/08/28/4493659.aspx

繼續閱讀