以下示例顯示如何編寫一個簡單的基於Web的重定向應用程式,這個應用程式使用重定向將http
請求傳輸到另一個頁面。首先使用Eclipse IDE,並按照以下步驟使用Spring Web Framework開發基於動態表單的Web應用程式:
基於Spring MVC - Hello World實例章節中代碼,創建創建一個名稱為 PageRedirection 專案。
在
com.zaixian.springmvc
包下創建一個Java類WebController
。- 在
jsp
子檔夾下創建一個視圖檔index.jsp
,final.jsp
。 - 最後一步是創建所有源和配置檔的內容並導出應用程式,如下所述。
完整的專案代碼,如下所示 -
WebController.java 檔中的代碼如下所示 -
package com.zaixian.springmvc;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
public class WebController {
@RequestMapping(value = "/index", method = RequestMethod.GET)
public String index() {
return "index";
}
@RequestMapping(value = "/redirect", method = RequestMethod.GET)
public String redirect() {
return "redirect:finalPage";
}
@RequestMapping(value = "/finalPage", method = RequestMethod.GET)
public String finalPage() {
return "final";
}
}
下麵是Spring視圖檔index.jsp
的內容。這是一個登陸頁面,這個頁面將發送訪問重定向方法的請求,將重定向這個請求到另一個服務方法,最後將顯示final.jsp
頁面的內容。
index.jsp 檔中的代碼如下所示 -
<%@ page contentType="text/html; charset=UTF-8"%>
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<html>
<head>
<title>Spring MVC頁面重定向</title>
</head>
<body>
<h2>Spring MVC頁面重定向</h2>
<p>點擊下麵的按鈕將結果重定向到新頁面</p>
<form:form method="GET" action="/PageRedirection/redirect">
<table>
<tr>
<td><input type="submit" value="頁面重定向" /></td>
</tr>
</table>
</form:form>
</body>
</html>
final.jsp 檔中的代碼如下所示 -
<%@ page contentType="text/html; charset=UTF-8"%>
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<html>
<head>
<title>Spring重定向頁面</title>
</head>
<body>
<h2>重定向頁面...</h2>
</body>
</html>
完成創建源和配置檔後,導出應用程式。 右鍵單擊應用程式,並使用導出> WAR檔選項,並將 PageRedirection.war
檔保存在Tomcat的webapps
檔夾中。或者直接右鍵選擇“Run As -> Run On Server”。
啟動Tomcat伺服器,並確保您能夠使用標準流覽器從webapps檔夾訪問其他網頁。現在嘗試訪問 URL => http://localhost:8080/HelloWeb/index ,如果Spring Web應用程式沒有問題,那麼應該看到以下結果:
現在點擊“重定向頁面”按鈕提交表單並獲得最終重定向頁面。如果Spring Web應用程式沒有問題,那麼應該看到以下結果:
上一篇:
Spring MVC可參數化的視圖控制器
下一篇:
Spring MVC內部資源視圖解析器