Java springmvc和AJAX错误

Java springmvc和AJAX错误,java,ajax,json,spring-mvc,Java,Ajax,Json,Spring Mvc,在JSP文件中,我有一个字段输入学生组,然后将此数据传递给实体类GroupStudent(不带getter和setter方法) JSP 但它不会将数据传递给控制器。实体的字段为空 @RequestMapping(value = "/addData.html", method = RequestMethod.POST) public @ResponseBody Student addNewGroup(@ModelAttribute(value = "group") GroupStudent gro

在JSP文件中,我有一个字段输入学生组,然后将此数据传递给实体类GroupStudent(不带getter和setter方法)

JSP

但它不会将数据传递给控制器。实体的字段为空

@RequestMapping(value = "/addData.html", method = RequestMethod.POST)
public @ResponseBody Student addNewGroup(@ModelAttribute(value = "group") GroupStudent group) {

    System.out.println("Entered group: " + group.getGroupStudentNumber());

    return new Student();
}
还有一件事我不能把entity Student传递给ajax。我在弹簧罐里加了一些

jackson-core-asl-1.7.1和jackson-mapper-asl-1.7.1能够将实体对象传递给ajax。但它没有给出结果。当我尝试在Google Chrome中传递数据(到ajax)时,我有一个错误为[object]的窗口。
我不知道为什么会这样。如果您能提供任何信息,我将不胜感激。

您的控制器没有正确设置以接受该职位。如果要发布JSON正文,则需要对方法参数使用
@RequestBody
注释,如下所示:

@RequestMapping(value = "/addData.html", method = RequestMethod.POST)
public @ResponseBody Student addNewGroup(@RequestBody GroupStudent group) {
    System.out.println("Entered group: " + group.getGroupStudentNumber());
    return new Student();
}

这样,您的JSON将直接映射到您的
GroupStudent
对象。

您还需要通过添加consumes=MediaType.APPLICATION\u JSON\u值来指定consumes媒体类型,products=MediaType.APPLICATION\u JSON\u将值添加到@RequestMapping中。

向我们展示
GroupStudent
类的外观。将ajax函数调用中的url更改为url:“addData.html”我的意思是删除/IRSystem/I已添加了GroupStudent class.jdev,如果删除该部分,我将得到错误404。你是对的,这是我的错误,我读过,但忘了换衣服。但当我试图将数据从ajax传递到控制器或从控制器传递到ajax时(如果我将数据传递到ajax时没有任何@RequestBody参数),浏览器仍然会出现错误[object]。
function addGroupAjax() {
            var groupStudentNumber = $('#groupStudentNumber').val();

            $.ajax({
                type: "POST",
                url: "/IRSystem/addData.html",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                data: "{groupStudentNumber:" + groupStudentNumber + "}",
                success: function(response) {

                },
                error: function(e) {
                    alert("Error" + e);
                }
            });
        } 
@RequestMapping(value = "/addData.html", method = RequestMethod.POST)
public @ResponseBody Student addNewGroup(@ModelAttribute(value = "group") GroupStudent group) {

    System.out.println("Entered group: " + group.getGroupStudentNumber());

    return new Student();
}
@RequestMapping(value = "/addData.html", method = RequestMethod.POST)
public @ResponseBody Student addNewGroup(@RequestBody GroupStudent group) {
    System.out.println("Entered group: " + group.getGroupStudentNumber());
    return new Student();
}