Spring MVC多个URL映射和多个Path变量

时间:2013-07-07 04:35:27

标签: spring-mvc

我有一个对象,我必须以多种方式显示其数据。所以,当然我有多个模板可以做到这一点。但是,我现在有一个控制器,它有4个方法完全相同,只使用不同的ModelAndView。我有两种解决方法

  1. 将模板名称作为URL参数发送。 (这对我来说似乎非常错误)
  2. 有4个控制器方法,它们都调用私有方法并在方法调用中发送templateName。 (更好,但不是最好的)
  3. 有没有办法说,有多个映射,给我的ONE方法发送一个不同的路径变量?因此映射“/ oneWay”会向方法发送一个值为“templateA”的String,另一个映射“/ anotherWay”会向该方法发送一个值为“templateB”等的String。

    任何想法?

1 个答案:

答案 0 :(得分:0)

根据具体情况URI template patterns可能是一个选项:

@RequestMapping("/{theWay}")
public String display(@RPathVariable String theWay, ...) {
  ...
  return theWay;
}

基本上,这是两种方法的结合。如果theWay不应该是模板的名称,那么您可以进行一些映射。