想飛就別怕摔

          大爺的并TM罵人

          struts2學習筆記(一)--struts.xml配置文件

          學習sturts2無非就是學習各種配置而已。最重要的就是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"
          >

          <struts>
              
          <include file="login.xml" /><!--將其他的xml文件容納進來-->

              
          <constant name="struts.devMode" value="true" />
              
          <!-- 開發模式,更改配置文件無需重啟服務器。 -->

              
          <constant name="struts.i18n.encoding" value="UTF-8" />
              
          <!-- 字符集,頁面傳遞是中文需要使用此配置。解決中文問題。 -->

              
          <constant name="struts.custom.i18n.resources" value="i18n" />
              
          <!-- 國際化 -->

              
          <constant name="struts.i18n.reload" value="false" />
              
          <!--國際化是否生效-->

              
          <constant name="struts.convention.classes.reload" value="false" />
              
          <!-- 配置Convention插件自動重加載映射-->

              
          <constant name="struts.convention.action.packages" value="net.shopxx.action" />
              
          <!--
                  這個屬性用于約定Action 類的根包(這個包是Java 類的包,而不是Struts.xml中配置的<package>節點)
                  在一個項目中有這樣一系列的Java 包,那么當指定convention的這個屬性,Struts
                  框架就會在你訪問特定的URL時會自動的找到所要的請求的實現類。 當你在瀏覽器中輸入:
                  http://localhost:8080/HelloWorld.action
                  ,Struts會自動的找到并執行com.ZTest.web.action.HelloWorldAction.java類。
                  當你在瀏覽器中輸入: http://localhost:8080/test/aaa.action
                  ,Struts會自動的找到并執行com.ZTest.web.action.test.aaaAction.java類。
              
          -->

              
          <constant name="struts.serve.static.browserCache" value="false" />
              
          <!--是否struts過濾器中提供的靜態內容應該被瀏覽器緩存在頭部屬性中-->

              
          <constant name="struts.objectFactory" value="spring" />
              
          <!-- com.opensymphony.xwork2.ObjectFactory接口 -->

              
          <constant name="struts.multipart.maxSize" value="-1" />
              
          <!-- multipart請求信息的最大尺寸(文件上傳用) -->

              
          <constant name="struts.ui.theme" value="simple" />
              
          <!-- 默認的UI template主題 -->

              
          <constant name="struts.action.extension" value="action" />
              
          <!--
                  用URL擴展名來確定是否這個請求是被用作Struts action,其實也就是設置 action的后綴,例如login.do的'do'字
              
          -->

              
          <constant name="struts.convention.result.path" value="/WEB-INF/template/" />
              
          <!--
                  設置Convention插件定位視圖資源的根路徑。默認值為/WEB-INF/content
                  這個屬性用于約定Action類執行完畢以后返回資源的結果路徑 當你在瀏覽器中輸入:xxx/HelloWorld.aciton
                  ,Struts會自動的找到并執行com.ZTest.web.action.HelloWorldAction.java類,并放回到WEB-INF/template/HelloWorld.jsp。
              
          -->

              
          <constant name="struts.convention.action.name.separator"
                  value
          ="_" />
              
          <!--
                  這個屬性是約定當一個Java 類 有多個單詞組合成的時候,映射的URL地址的時候訪問的格式的分隔符。
                  如果不指定這個屬性,Struts默認的分隔符是 “-”,例如 HelloWorldAction 則訪問的URL
                  是Hello-World.action 如果指定這個屬性是上面的格式,則是沒有分隔符,會按照Java 類名直接映射,例如
                  HelloWorldAction 則訪問的URL 是HelloWorld.action
              
          -->

              
          <constant name="struts.convention.action.name.lowercase"
                  value
          ="false" />
              
          <!--
                  是否將Action類轉換成小寫當一個類的類名是多個單詞組合起來的時候,例如 HelloWolrdAction,如果指定了這個屬性,
                  則訪問的地址必須是: HelloWorld.action ,如果不是指定這個屬性則是: helloworld.action
              
          -->

              
          <constant name="struts.convention.default.parent.package"
                  value
          ="default" />
              
          <!--
                    這個屬性指定的是Strtus.xml中配置的 <package>節點的父節點。
                
          -->

              
          <constant name="struts.freemarker.manager.classname" value="net.shopxx.common.FreemarkerManager" />
              
          <!--
                  屬性指定Struts 2使用的FreeMarker管理器。該屬性的默認值是
                  org.apache.struts2.views.freemarker.FreemarkerManager,這是Struts
                  2內建的FreeMarker管理器。
                  struts.freemarker.wrapper.altMap該屬性只支持true和false兩個屬性值,默認值是true。通常無需修改該屬性值。
              
          -->

              
          <!--訪問http://localhost:8080/工程名/hello_struts(既可以訪問根目錄下得Hello.jsp)-->
              
          <package name="front" extends="struts-default" namespace="/">
                  
          <default-action-ref name="errorPage404Action" /><!-- 默認的action -->
                  
          <action name="errorPage404Action">
                      
          <result type="redirect">/html/error_page_404.html</result>
                  
          </action>
                  
                  
          <global-results><!-- 全局的result,只使用與此packeage中的所有action -->
                      
          <result name="mainpage">/main.jsp</result>
                  
          </global-results>
                  
                  
          <action name="index" class="com.bjsxt.struts2.front.action.IndexAction1">
                      
          <!--
                          配置了class程序會訪問自己的action中的execute方法返回String,如return success
                      
          -->
                      
          <result name="success">/ActionIntroduction.jsp</result>
                  
          </action>
              
          </package>

              
          <package name="user" extends="struts-default" namespace="/user">
                  
          <action name="userAdd" class="com.bjsxt.struts2.user.action.UserAction"
                      method
          ="add"><!--加入了method="add"所以會訪問UserAction中的add方法(這種方法不建議使用,忘了吧!)-->
                      
          <result>/user_add_success.jsp</result>
                      
          <!--
                          頁面調用<a href="<%=context
                          %>/user/userAdd">添加用戶</a>【這樣會訪問】namespace="/user",action名稱為name="userAdd"的action中add方法
                      
          -->
                  
          </action>
                  
          <action name="user" class="com.bjsxt.struts2.user.action.UserAction">
                      
          <!--
                          建議使用的方法在這里,這樣配置需要使用的調用發放是(動態調用DMI)
                      
          -->
                      
          <result>/user_add_success.jsp</result>
                      
          <!--
                          頁面調用<a href="<%=context
                          %>/user/user!add">添加用戶</a>【這樣會訪問】namespace="/user",action名稱為name="user"的action中add方法
                      
          -->
                      
          <!--用于一個action中多個方法對應返回同一個頁面,返回不同頁面需要配置多個result-->
                  
          </action>
              
          </package>

              
          <package name="actions" extends="struts-default" namespace="/actions">
                  
          <action name="Student*" class="com.bjsxt.struts2.action.StudentAction"
                      method
          ="{1}">
                      
          <result>/Student{1}_success.jsp</result>
                      
          <!--
                          通配符的使用;jsp中有兩個訪問連接 <a href="<%=context
                          %>/actions/Studentadd">添加學生</a> <a href="<%=context
                          %>/actions/Studentdelete">刪除學生</a>
                          *和{1}就是填充add和delete后所訪問action中的方法與jsp 【action中一定會有兩個方法一個add一個delete】
                      
          -->
                      
          <!--用于一個action中多個方法,返回不同頁面。只需配置一個帶有通配符的result【約定優于配置】-->
                  
          </action>
                  
          <action name="*_*" class="com.bjsxt.struts2.action.{1}Action"
                      method
          ="{2}"><!--第一個*對應{1};第二個*對應{2}-->
                      
          <result>/{1}_{2}_success.jsp</result>
                      
          <!-- {0}_success.jsp -->
                  
          </action>
                  
          <!--用于多個action中多個方法,返回不同頁面。只需配置一個帶有通配符的result【約定優于配置】-->
              
          </package>

              
          <package name="default" namespace="/" extends="struts-default">
                  
          <default-action-ref name="index"></default-action-ref>
                  
          <!--默認的action配置-->
                  
          <action name="index">
                      
          <result>/default.jsp</result>
                  
          </action>
              
          </package>

          </struts>
          如果使用struts2的convertion plugin約束,可以完全不用配置action

          posted on 2011-12-10 11:20 生命的綻放 閱讀(2111) 評論(0)  編輯  收藏 所屬分類: Struts2.0

          <2011年12月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導航

          統計

          常用鏈接

          留言簿(5)

          隨筆分類(94)

          隨筆檔案(93)

          文章分類(5)

          文章檔案(5)

          相冊

          JAVA之橋

          SQL之音

          兄弟之窗

          常用工具下載

          積分與排名

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 阿坝县| 合阳县| 天气| 山东省| 新乡县| 阿尔山市| 稻城县| 科技| 乐山市| 灵寿县| 双辽市| 遂昌县| 龙南县| 南昌县| 保康县| 南部县| 建瓯市| 武清区| 西畴县| 西峡县| 灵宝市| 安阳市| 醴陵市| 达拉特旗| 北辰区| 栖霞市| 尼勒克县| 白河县| 徐州市| 海南省| 呼玛县| 从化市| 平定县| 鄱阳县| 兰州市| 万山特区| 奇台县| 宝山区| 卢龙县| 东丰县| 广灵县|