我有我的控制器 - 这样的类:
@PostMapping("/otp")
public String otpSubmit(@RequestParam("token") String token, HttpSession session, Model model) throws IOException {
Long enrollment = (Long) session.getAttribute("enrollment");
BaseResponse otpResponse = otpRestClient.validateOTP(enrollment, token);
if(otpResponse.getCode().equals("1020")) {
model.addAttribute("object", otpResponse.getPayload());
return "redirect:/password";
}
model.addAttribute("errorCode", otpResponse.getCode());
model.addAttribute("errorMessage", otpResponse.getMessage());
return "/otp";
}
我想要的很简单(我认为)将model.addAttribute("object", otpResponse.getPayload());
传递给controller-B类,以便我可以在另一个视图中访问该数据。
如何将此注入控制器-B类?。
答案 0 :(得分:2)
通过添加redirectAttributes,我们可以传递模型数据
这是Controller one。
public String controlMapping1(
@ModelAttribute("mapping1Form") final Model model,
final RedirectAttributes redirectAttributes) {
redirectAttributes.addFlashAttribute("mapping1Form", model);
return "redirect:mapping2";
}
这是Controller2
public String controlMapping2(
@ModelAttribute("mapping1Form") final Model model) {
model.addAttribute("transformationForm", model);
return "view_name";
}
答案 1 :(得分:0)
你可以保存这个"对象o = otpResponse.getPayload()" 全局变量中的对象,以便稍后您可以从任何控制器访问它。