struts2 跳轉方式,請求分派,重定向

http://localhost:8080/s2_05_HCM_05/hcm/employee/helloworld
一、action 成員中的信息默認會保存在request 範圍中.注意屬性應該保證有set方法.
二、默認的轉發方式是請求分派apache

三、http://localhost:8080/s2_05_HCM_05/hcm/employee/message
<!-- 若是沒有找到指定result,會到繼承的base package中找 -->瀏覽器

四、測試重定向 重定向的時候,不能定向到WEB-INF下的jsp頁面,
這個路徑下只有服務器能夠訪問,客戶端是不能經過瀏覽器訪問到的,
除非經過action跳轉到該頁面服務器

重定向:直接定向到JSP頁面  type="redirect"
http://localhost:8080/s2_05_HCM_05/hcm/employee/redirectjsp

重定向:經過action作跳轉      type="redirectAction"
http://localhost:8080/s2_05_HCM_05/hcm/employee/redirectAction測試

重定向:從一個包重定向到其餘的包編碼

五、查看文件源碼,能夠指定以什麼編碼讀取文件
http://localhost:8080/s2_05_HCM_05/hcm/employee/testCodespa

<?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>
 
 <package name="base" extends="struts-default">
  <global-results>
   <result name="message">/WEB-INF/page/message.jsp</result>
  </global-results>
 </package>
 
 <!-- package namespace + action name  惟一肯定頁面的跳轉 --> 
 <package name="itcast" namespace="/hcm/employee" extends="base">
  <!-- 用${username}能夠取到做用域中的屬性名稱對應值 -->
  <!-- 默認做用域是request -->
  <action name="helloworld" class="cn.itcast.action.HelloWorldAction" method="{1}">
   <result name="success">/WEB-INF/page/hello.jsp?username=${username}</result>
   <result name="message">/WEB-INF/page/message.jsp</result>
  </action>
  
  <action name="testCode">
   <result type="plainText">index.jsp</result>
  </action>
  
  <action name="testCode2">
   <result type="plainText">
    <param name="location">/index2.jsp</param>
    <param name="charSet">UTF-8</param><!-- 以什麼編碼讀取文件 -->
   </result>
  </action>
  
  <!-- 若是沒有找到指定result,會到繼承的base package中找 -->
  <action name="message" class="cn.itcast.action.HelloWorldAction" method="add">
   <!--  
   <result name="message">/WEB-INF/page/hello.jsp</result>
   -->
  </action>
  
  <!-- 測試重定向,注意:重定向不能定向到WEB-INF路徑下的jsp頁面,除非經過action跳轉 -->
  <action name="redirect">
   <result type="redirect">/hello.jsp</result>
  </action>
  <!-- 重定向,通過action跳轉   本包 -->
  <action name="redirectAction">
   <result type="redirectAction">helloworld!add</result>
  </action>
  
  <!-- 重定向到其餘的包 -->
  <action name="redirectAction2">
   <result type="redirectAction">
    <param name="actionName">helloworld</param>
    <param name="namespace">/hcm/redirect</param>
   </result>
  </action>
 </package>
 
 <package name="testDirect" namespace="/hcm/redirect" extends="base">
  <action name="helloworld" class="cn.itcast.action.HelloWorldAction" method="execute">
   <result name="success">/WEB-INF/page/employeeAdd.jsp</result>
  </action>
 </package>
 
</struts>
相關文章
相關標籤/搜索