0

在 Spring 控制器中,我想为不同的 HTML 调用相同的方法 - 表单提交因此,将 HttpServletRequest 作为 RequestBody

@RequestMapping(value = "/Search")
public String doSearch(HttpServletRequest httpServletRequest, ModelMap map) {
    // Now, looking for something like this...
    if(req.getType.equals("x")
        //X x = SOME_SPRING_UTIL.convert(httpServletRequest,X.class)
    else
       // Y y = SOME_SPRING_UTIL.convert(httpServletRequest,Y.class)
}

我想通过 Spring 将请求参数转换为 bean,因为它在我将 Bean 作为方法参数时进行转换

4

1 回答 1

0

使用注解的params属性@RequestMapping来区分请求映射映射。

@RequestMapping(value="/search", params={"actionId=Actionx"})
public String searchMethod1(X search) {}

@RequestMapping(value="/search", params={"actionId=ActionY"})
public String searchMethod2(Y search) {}

通过这种方式,您可以为每个不同的操作创建方法,并让 spring 为您完成所有繁重的工作。

于 2013-09-16T14:43:17.600 回答