您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Spring Web MVC:对请求参数和路径变量使用相同的请求映射

Spring Web MVC:对请求参数和路径变量使用相同的请求映射

您可以为同一功能设置两个映射网址,并将ID设置为可选。

@RequestMapping(method=RequestMethod.GET, value={"/campaigns","/campaigns/{id}"})
public String getCampaignDetails(Model model,
     @RequestParam(value="id", required=false) Long id,
     @PathVariable("id") Long id2)
{
}

尽管在不发送id的情况下它也会映射,但是您可以在方法内部进行控制。

:以前的解决方案不起作用,因为@PathVariable没有设置为null{null}并且无法映射URL(感谢ngeek)。我认为那时唯一可能的解决方案是创建两个方法,每个方法都与其映射,@MappingRequest在其中一个内部调用一个函数重定向到另一个URL(redirect:或forward:Spring前缀)。我知道此解决方案不是您想要的,但认为这是您可以做到的最好。确实,您不是在复制代码,而是在创建另一个函数来处理另一个URL。

Java 2022/1/1 18:14:00 有604人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶