Java 如何从控制器重定向到另一个控制器以POST方法?

Java 如何从控制器重定向到另一个控制器以POST方法?,java,spring,model-view-controller,Java,Spring,Model View Controller,我有一些方法 @RequestMapping(value = "process", method = RequestMethod.POST) public ModelAndView process(HttpServletRequest request) { ModelAndView modelAndView; String phoneNumber = request.getParameter("phone_number"); int amo

我有一些方法

@RequestMapping(value = "process", method = RequestMethod.POST)
    public ModelAndView process(HttpServletRequest request) {
        ModelAndView modelAndView;
        String phoneNumber = request.getParameter("phone_number");
        int amount = Integer.parseInt(request.getParameter("amount"));

        String result = validateService.validate(phoneNumber, amount);

        if (!result.equals("OK")) {
            modelAndView = new ModelAndView("start");
            modelAndView.addObject("result",result);
        }else {
            modelAndView = new ModelAndView("redirect:/check/process");
            modelAndView.addObject("phone_number",phoneNumber);
            modelAndView.addObject("amount",amount);
        }
        return modelAndView;
    }
我需要重定向到另一个控制器以发布方法。但我有一个错误

HTTP Status 405 - Request method 'GET' not supported
它是第二个控制器

@Controller
@RequestMapping("/check")
public class CheckController {

    @RequestMapping(value = "process", method = RequestMethod.POST)
    public ModelAndView process(HttpServletRequest request) {
        ModelAndView modelAndView = new ModelAndView("check");
        String phoneNumber = request.getParameter("phone_number");
        int amount = Integer.parseInt(request.getParameter("amount"));
        return modelAndView;
    }
}

在我尝试重定向的地方

您不能重定向到post方法,您应该看看post/redirect/Get设计模式。如果第一个控制器中的验证成功,您可以使用
RedirectAttributes
将闪存数据重定向到第二个控制器,因此您必须将
/check/process
的方法更改为
GET

tl;dr你不能,如果你需要这个,你只是不太了解http是如何工作的,你可以解释你的用例,然后我们可以帮助你找到一个有效的解决方案我如何从我的方法调用新的控制器?问题是为什么?你可以使用
restemplate
来做到这一点,但我相信这不是你想要的,一个控制器一个视图是什么?