一尘不染

为具有不同参数的相同网址模式创建两个方法

spring-mvc

我有一个方案,其中一个网址“ serachUser”可能带有两个不同的值(请求参数)userId或UserName。

为此,我创建了两种方法

public String searchUserById(@RequestParam long userID, Model model) 
public ModelAndView searchUserByName(@RequestParam String userName)

但是我越来越模糊的映射发现异常。Spring有任何方法可以处理这种情况。


阅读 368

收藏
2020-06-01

共1个答案

一尘不染

您可以使用该params参数按HTTP参数进行过滤。在您的情况下,它将类似于:

@RequestMapping(value = "/searchUser", params = "userID")
public String searchUserById(@RequestParam long userID, Model model) {
  // ...
}

@RequestMapping(value = "/searchUser", params = "userName")
public ModelAndView searchUserByName(@RequestParam String userName) {
  // ...
}
2020-06-01