如何在Spring MVC 3.0中以编程方式将一个控制器转发到另一个控制器

时间:2011-08-01 19:59:21

标签: spring spring-mvc

如何使用spring mvc 3.0

以编程方式从控制器中的一个方法转发到另一个方法
@RequestMapping(value = "getData", method = RequestMethod.POST)
   public void getData(@RequestBody LazyTreeGridInput lazyTreeGridInput,
            HttpServletResponse response){


 if(someCondition){

    //forward to getParents


}else{
     //forward to children
   }
}

4 个答案:

答案 0 :(得分:2)

你可以看到here使用spring mvc 3.0重定向的各种方法。

更新:

如果您对转发更感兴趣,您应该在此控制器中使用您的控制器,并调用您希望转发的方法。

答案 1 :(得分:1)

if (someCondition) {
    return "redirect:/parentsUrl";
} else {
    return "redirect:childUrl";
}

答案 2 :(得分:0)

为什么不把另一个控制器的url放在你的处理程序方法返回的modelAndView中?调用控制器方法是否与转发它直接相同?

答案 3 :(得分:0)

尝试返回一个String,而String则是前向URL     @RequestMapping({" /的getData"})     public String execute(模型模型){

if (someCondition) {
    return "forward:/parentsUrl";
} else {
    return "forward:/childUrl";
}
}