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 的问题就解决了!

 

posted @ 2019-06-11 15:52  何茫然zju  阅读(9369)  评论(0编辑  收藏  举报