在Spring MVC中,Post/Redirect/Get模式请求之间传递数据的方法如下:
首先,在控制器中处理POST请求,并将需要传递的数据添加到Model中。例如,在处理表单提交时,将表单数据添加到Model中。
@PostMapping("/submitForm")
public String handleFormSubmit(@ModelAttribute("formData") FormData formData, Model model) {
// 处理表单数据
model.addAttribute("formData", formData);
return "redirect:/showResult";
}
在重定向到结果页面时,可以使用RedirectAttributes将数据一起传递。
@PostMapping("/submitForm")
public String handleFormSubmit(@ModelAttribute("formData") FormData formData, RedirectAttributes redirectAttributes) {
// 处理表单数据
redirectAttributes.addFlashAttribute("formData", formData);
return "redirect:/showResult";
}
接下来,在控制器中处理GET请求,并从Model中获取传递的数据。
@GetMapping("/showResult")
public String showResult(@ModelAttribute("formData") FormData formData, Model model) {
// 使用表单数据进行处理
model.addAttribute("result", "处理结果");
return "resultPage";
}
最后,在视图层(例如Thymeleaf模板)中显示处理结果。
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Result Page</title>
</head>
<body>
<h1 th:text="${result}">Result</h1>
</body>
</html>
这样,在Spring MVC中,您就可以在Post/Redirect/Get模式请求之间传递数据了。
领取专属 10元无门槛券
手把手带您无忧上云