使用不同的参数为相同的 url 模式创建两种方法 [英] create two method for same url pattern with different arguments
本文介绍了使用不同的参数为相同的 url 模式创建两种方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个场景,其中一个 urlserachUser"可能带有两个不同的值(请求参数)userId 或 UserName.
I have scenario where one url "serachUser" may come with two different value (request parameter) userId or UserName.
为此我创建了两种方法
public String searchUserById(@RequestParam long userID, Model model)
public ModelAndView searchUserByName(@RequestParam String userName)
但是我遇到了 Ambiguous mapping found 异常.Spring 有办法处理这种情况.
But i am getting Ambiguous mapping found exception. Spring has any way to handle this situation.
推荐答案
您可以使用 params
参数以通过 HTTP 参数过滤.在你的情况下,它会是这样的:
You can use the params
parameter to filter by HTTP parameters. In your case it would be something like:
@RequestMapping(value = "/searchUser", params = "userID")
public String searchUserById(@RequestParam long userID, Model model) {
// ...
}
@RequestMapping(value = "/searchUser", params = "userName")
public ModelAndView searchUserByName(@RequestParam String userName) {
// ...
}
这篇关于使用不同的参数为相同的 url 模式创建两种方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文