Spring MVC中控制器类中方法的多个@RequestMapping
Posted
技术标签:
【中文标题】Spring MVC中控制器类中方法的多个@RequestMapping【英文标题】:Multiple @RequestMapping for a method in controller class in Spring MVC 【发布时间】:2014-01-02 08:47:42 【问题描述】:我在 Spring MVC 的控制器类中有一个方法。
@RequestMapping("/home")
public void contactHomeDispatcher()
...
是否可以为此方法映射另一个 url,例如“/contact”。我的问题是控制器中的单个方法是否可以有多个请求映射。
【问题讨论】:
什么情况下需要这个? 当你想要相同的功能但不同的 URL 时,可以在多租户应用程序或其他用户案例中需要它@vincent-ramdhanie 在 servlet 中,这就是为什么他们除了 servlet decleration 之外还有 servlet 映射 复制到:Multiple Spring @RequestMapping annotations 【参考方案1】:作为上述的替代方案,您可以按以下格式声明@RequestMapping。
@RequestMapping(value = "/aaa", "/bbb", method = RequestMethod.POST, consumes = "application/json", produces = "application/json")
【讨论】:
【参考方案2】:您不能拥有多个@RequestMapping
s,但您可以拥有多个属性值的@RequestMapping
s:
@RequestMapping( "/home", "/contact" )
As you can see,@RequestMapping
的所有属性都是数组,因此可以取多个值。
【讨论】:
这正是我想要的。非常感谢。又一个要求。如何在下面的方法中再添加一个映射 @RequestMapping(value = "/add", method = RequestMethod.POST) 知道了...不用回复以上是关于Spring MVC中控制器类中方法的多个@RequestMapping的主要内容,如果未能解决你的问题,请参考以下文章
MVC模式中控制器(servlet)接收请求参数、调用DAO、保存处理结果、改变路径并转发(响应)
类中的字段值不会使用 Spring Boot MVC 控制器更新