38
Tôi có kịch bản trong đó một url "serachUser" có thể có hai giá trị khác nhau (tham số yêu cầu) userId hoặc UserName.tạo hai phương thức cho cùng một mẫu url với các đối số khác nhau
để cho điều này tôi đã tạo ra hai phương pháp
public String searchUserById(@RequestParam long userID, Model model)
public ModelAndView searchUserByName(@RequestParam String userName)
Nhưng tôi đang nhận được bản đồ mơ hồ tìm thấy ngoại lệ. Mùa xuân có bất kỳ cách nào để xử lý tình huống này.
Cách khác tôi đã xử lý việc này là chấp nhận tham số dưới dạng Chuỗi, sau đó gọi Long.parseLong() trên đó. Nếu nó phân tích cú pháp, thì đó là userId, nếu nó không, giả sử tên người dùng của nó. – CodeChimp
Tôi nghĩ rằng quyết định trên cơ sở ngoại lệ không phải là một ý tưởng tốt ... – Stifler
Trong trường hợp bạn muốn biết nó hoạt động như thế nào khi bạn có nhiều tham số, bạn có thể sử dụng 'params = {" storeId "," containerLabel "}' – cindyxiaoxiaoli