Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'userController' method

时间:2019-06-11
本文章向大家介绍Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'userController' method,主要包括Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'userController' method使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

在使用SpringMVC的时候遇到了这个问题

 

问题原因:  在指定方法所对应的url地址的时候重复了, 也就是@RequestMapping("url")中, 两个方法使用了同一个url路径

 

  //获取请求参数
    @RequestMapping(value = "/login")
    public String login(@RequestParam(name = "username", required = true, defaultValue = "admin") String username) {
        System.out.println(username);
        return "login";
    }

    //使用JSON从前端获取数据
    @RequestMapping(value = "/login")
    public String login(@RequestBody User user) {
        System.out.println(user.getUserName());
        System.out.println(user.getUserGender());
        return "/user/user.jsp";
    }

 

解决办法: 将重复的名字换成另外一个

    //获取请求参数
        @RequestMapping(value = "/login2")
        public String login(@RequestParam(name = "username", required = true, defaultValue = "admin") String username) {
            System.out.println(username);
            return "login";
        }

        //使用JSON从前端获取数据
        @RequestMapping(value = "/login3")
        public String login(@RequestBody User user) {
            System.out.println(user.getUserName());
            System.out.println(user.getUserGender());
            return "/user/user.jsp";
        }

 

到这里,  Ambiguous(有歧义的) mapping(映射). Cannot map 'userController' method 的问题就解决了!

原文地址:https://www.cnblogs.com/zjulanjian/p/11004053.html