Java 从';把';要求

Java 从';把';要求,java,spring,rest,spring-mvc,put,Java,Spring,Rest,Spring Mvc,Put,因此,我使用ajax通过put请求发送formdata formdata.append('img', img); formdata.append('student', JSON.stringify(student)); $.ajax({ url: "/student", data: formdata, dataType: "json",

因此,我使用ajax通过put请求发送formdata

formdata.append('img', img);
formdata.append('student', JSON.stringify(student));
$.ajax({
                    url: "/student",
                    data: formdata,
                    dataType: "json",
                    contentType: false,
                    processData: false,
                    type: method,
                    success: function (data) {
                        console.log(data);
                    }
                })
它工作得很好,但在服务器端,控制器可以接收请求,但无法获取内部的student和img参数

 @PutMapping("/student")
    @ResponseBody
    public String editStudent(HttpServletRequest request){
        Student student = null;
        String obj = request.getParameter("student");  // obj = null
        ObjectMapper objectMapper = new ObjectMapper();
        objectMapper.registerModule(new JavaTimeModule());
        try {
            student = objectMapper.readValue(obj, Student.class);
        }catch (Exception e){
            return ...        }

        ...
}

我确信post的代码工作没有问题,但是put的代码不能得到请求,但不能得到存储在里面的数据

 <filter>
    <filter-name>formContentFilter</filter-name>
    <filter-class>org.springframework.web.filter.FormContentFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>formContentFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

formContentFilter
org.springframework.web.filter.FormContentFilter
formContentFilter
/*