有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何访问同一控制器中另一个RequestMapping的模型?

如何使控制器中与RequestMapping关联的对象能够被返回到同一视图页的同一控制器中的另一个RequestMapping访问?多谢各位

以下是我的示例代码,它只放在一个控制器中:

@RequestMapping(value="firstMapping",method=RequestMethod.POST)
public ModelAndView firstMapping (HttpServletRequest request) {

    //myObject is processed here

    ModelAndView mav = new ModelAndView();
    mav.setViewName("samplepage");
    mav.addObject("myObject",myObject); //How do I pass this object to the mapping below?
    return mav;
}

@RequestMapping(value="secondMapping",method=RequestMethod.POST)
public ModelAndView secondMapping (HttpServletRequest request) {

    //I want to do something else here but I need the object from
    //the mapping above. For example myObject2 is processed here

    ModelAndView mav = new ModelAndView();
    mav.setViewName("samplepage");

    mav.addObject("myObject",myObject);
    mav.addObject("myObject2",myObject2);
    return mav;
}

共 (1) 个答案

  1. # 1 楼答案

    在第一种方法中,在设置属性后,您应该将请求转发给第二种方法,而不是设置视图。在第二种方法中设置视图。通过使用此方法,请求在处理后被转发到第二个方法

    @RequestMapping(value="firstMapping",method=RequestMethod.POST)
    public ModelAndView firstMapping (HttpServletRequest request) {
        Object myObject=new Object();
       request.setAttribute("myObject",myObject);
        return "forward:/secondMapping";
    }
    

    您还可以使用ModelandView将对象从方法1传送到方法2