Spring Web MVC:对请求参数和路径变量使用相同的请求映射
2022-09-01 04:32:43
有没有办法表达我的Spring Web MVC控制器方法应该通过请求传入ID作为URI路径的一部分来匹配...
@RequestMapping(method=RequestMethod.GET, value="campaigns/{id}")
public String getCampaignDetails(Model model, @PathVariable("id") Long id) {
...或者如果客户端以样式将ID作为HTTP请求参数发送...
@RequestMapping(method=RequestMethod.GET, value="campaigns")
public String getCampaignDetails(Model model, @RequestParam("id") Long id) {
在我看来,这是一个非常常见的现实世界URL方案,我不想添加重复的代码,但我还没有找到答案。任何建议都非常受欢迎。
编辑:事实证明,目前似乎(使用Spring MVC < = 3.0)没有办法实现这一目标,请参阅Javi答案中的讨论。