Struts2學習筆記之result視圖轉發類型

第四記:result視圖轉發類型

(1)、普通的頁面轉發

            <action name="example"  class="com.marker.controller.ExampleAction">

                      <result  name="index">/index.jsp</result>

                       <result  name="list">/WEB-INF/pages/list.jsp</result>

                      <result  name="success">/WEB-INF/pages/success.jsp</result>

           </action>

(2)、redirect重定向

         重定向到JSP頁面:

          <action name="example"  class="com.marker.controller.ExampleAction">

                      <result  name="index" type="redirect">/help/index.jsp</result>

           </action>

           注:重定向時,在WEB-INF下的文件不能夠重定向找到。

(3)、redirect重定向傳遞參數

        3-1:直接用類似EL表達式傳遞參數

           <action name="example"  class="com.marker.controller.ExampleAction">

                      <result  name="index" type="redirect">/help/index.jsp?name=${name}</result>

           </action>

        3-2:處理中文參數

           如果不轉碼:在jsp頁面獲取的方式爲:${param.name},中文顯示爲亂碼。

          編碼: String name=URLEncoder("中華帝國",“UTF-8”);

          解碼:<%= new String(request.getParameter("name").getBytes("ISO8859-1","UTF-8"),"UTF-8") %>

(4)、redirectAction重定向

             2-2:重定向到Action:

          <action name="example0"  class="com.marker.controller.ExampleFAction">

                      <result  name="index" type="redirect">/help/index.jsp</result>

                      <result >/default.jsp</result>

           </action>

            <action name="example"  class="com.marker.controller.ExampleAction">

                      <result   type="redirectAction">

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

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

                      </result>

            </action>

(5)、plainText視圖代碼輸出

           <action name="example"  class="com.marker.controller.ExampleAction">

                      <result   type="plainText">

                            <param name="location">/test/home.jsp</param> <-!指定視圖路徑  -->

                            <param name="charSet">UTF-8</param>    //   <-!解決輸出頁面中文亂碼問題  -->

                      </result>

            </action>

(6)、在某個包下創建一個公共視圖

        6-1:同一個包下訪問

          <package name="hers" namespace="/hers/">

                    <globle-results>

                              <result name="message">/messages.jsp</result>

                    <globle-results>

         </package>

        訪問路徑:/hers/message.action

        6-2:不同包下的訪問,全局視圖

             <package name="his" namespace="/his/"  extends="hers">

                      <action name="example"  class="com.marker.controller.ExampleAction">

                                  <result  name="index" >/index.jsp</result>

                      </action>

            </package> 

       訪問路徑:/his/message.acti

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章