55

在 Spring 基于注解的控制器中,是否可以将不同的查询字符串映射@RequestMapping到不同的方法?

例如

@RequestMapping("/test.html?day=monday")
public void writeMonday() {
}


@RequestMapping("/test.html?day=tuesday")
public void writeTuesday() {
}
4

2 回答 2

79

是的,您可以使用params元素:

@RequestMapping("/test.html", params = "day=monday")
public void writeMonday() {
}

@RequestMapping("/test.html", params = "day=tuesday")
public void writeTuesday() {
}

您甚至可以根据参数的存在与否进行映射

@RequestMapping("/test.html", params = "day")
public void writeSomeDay() {
}

@RequestMapping("/test.html", params = "!day")
public void writeNoDay() {
}
于 2009-01-18T05:22:18.977 回答
53

或者您可以执行以下操作:

@RequestMapping("/test.html")
public void writeSomeDay(@RequestParam String day) {
   // code to handle "day" comes here...
}
于 2009-07-06T13:33:44.880 回答