Spring MVC 中的 forward 和 redirect

<p>Spring MVC 中,咱們在返回邏輯視圖時,框架會經過 viewResolver 來解析獲得具體的 View,而後向瀏覽器渲染。假設邏輯視圖名爲 hello,經過配置,咱們<strong>配置某個 ViewResolver 以下:</strong></p> <p>Xml代碼&#160; <a href="http://blog.csdn.net/zzjjiandan/article/details/19491253"><img alt="收藏代碼" src="http://zachary-guo.iteye.com/images/icon_star.png" /></a></p> <ol> <li>&lt;bean class=&quot;org.springframework.web.servlet.view.InternalResourceViewResolver&quot;&gt;</li> <li>&lt;description&gt;</li> <li>&#160;&#160;&#160;&#160;&#160;&#160;&#160; 假如邏輯試圖名爲 &quot;hello&quot;,所以 viewResolver 將解析成 /WEB-INF/jsp/hello.jsp&#160; </li> <li>&lt;/description&gt;</li> <li>&lt;property name=&quot;order&quot; value=&quot;10&quot; /&gt;</li> <li>&lt;property name=&quot;prefix&quot; value=&quot;/WEB-INF/jsp/&quot; /&gt;</li> <li>&lt;property name=&quot;suffix&quot; value=&quot;.jsp&quot; /&gt;</li> <li>&lt;/bean&gt;</li> </ol> <p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; 實際上,框架仍是經過 forward 的方式轉發到了 /WEB-INF/jsp/hello.jsp。若是邏輯視圖名是 /hello,實際仍是轉發到了 /WEB-INF/jsp/hello.jsp,即 /WEB-INF/jsp//hello.jsp 等同於 /WEB-INF/jsp/hello.jsp。 <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; 如今有個問題,若是 /hello 就是某個 controller 的映射,我想轉發到這個 controller,怎麼辦?咱們能夠經過<strong>forward 前綴來達到轉發到其它資源的目的:</strong></p> <p>Java代碼&#160; <a href="http://blog.csdn.net/zzjjiandan/article/details/19491253"><img alt="收藏代碼" src="http://zachary-guo.iteye.com/images/icon_star.png" /></a></p> <ol> <li>public String handle() {&#160; </li> <li>// return &quot;forward:/hello&quot; =&gt; 轉發到可以匹配 /hello 的 controller 上</li> <li>// return &quot;hello&quot; =&gt; 實際上仍是轉發,只不過是框架會找到該邏輯視圖名對應的 View 並渲染</li> <li>// return &quot;/hello&quot; =&gt; 同 return &quot;hello&quot;</li> <li>return &quot;forward:/hello&quot;;&#160; </li> <li>}&#160; </li> </ol> <p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; 同理,若是咱們想重定向到某個資源,咱們能夠經過 <strong>redirect 前綴來達到重定向到其它資源的目的:&#160; (客戶端的跳轉)</strong></p> <p>Java代碼&#160; <a href="http://blog.csdn.net/zzjjiandan/article/details/19491253"><img alt="收藏代碼" src="http://zachary-guo.iteye.com/images/icon_star.png" /></a></p> <ol> <li>public String handle() {&#160; </li> <li>// 重定向到 /hello 資源</li> <li>return &quot;redirect:/hello&quot;;&#160; </li> <li>}&#160; </li> </ol>web

相關文章
相關標籤/搜索