JAVA - 【Struts2】結果視圖result

目錄

  • 什麼是結果視圖?
  • 如何配置結果視圖?
    • 理解轉發與重定向的四種區別
    • dispatcher + redirect
    • chain + redirectAction


<一> 什麼是結果視圖?

關於package的內容請參考:https://kylee.blog.csdn.net/article/details/106665992

用於展示結果的頁面叫做"結果視圖",本篇文章主要介紹如何使用在struts.xml配置文件中使用result配置路徑對應的頁面,即配置結果視圖。

<二> 如何配置結果視圖?

1> 理解轉發與重定向的四種區別

  1. 轉發是服務器端操作,重定向是客戶端操作(重定向狀態碼一般爲302)
  2. 轉發瀏覽器只需要出一條請求,重定向瀏覽器需要處理/發送兩條請求
  3. 轉發URL不變,重定向會改變當前URL
  4. 轉發不會丟失request域中數據,重定向會丟失

2> result標籤屬性(結果視圖屬性)

結果視圖名稱name + 結果視圖類型type

 

3> 轉發與重定向

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
	"http://struts.apache.org/dtds/struts-2.5.dtd">
	
<struts>
	<constant name="struts.devMode" value="true"></constant>
	<constant name="struts.action.extension" value="action,,"></constant>
	
	<package name="p1" extends="struts-default" namespace="/demo1">
		<action name="page1_1">
			<result name="success" type="chain">page1_2</result>
		</action>
		<action name="page1_2">
			<result name="success">/page/page1_2.jsp</result>
		</action>
	</package>
	
	<package name="p2" extends="struts-default" namespace="/demo2">
		<action name="page2_1">
			<result name="success" type="redirectAction">
				<param name="namespace">/demo1</param>
				<param name="actionName">page1_2</param>
			</result>
		</action>
		<action name="page2_2">
			<result name="success" type="chain">
				<param name="namespace">/demo1</param>
				<param name="actionName">page1_2</param>
			</result>
		</action>
	</package>
	
	<package name="error" extends="struts-default">
		<action name="*">
			<result>/page/404.html</result>
		</action>
	</package>
</struts>

 

 

 

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