完整错误:
Resolved [org.springframework.http.converter.HttpMessageNotReadableException: Required request body is missing: public java.lang.Object com.example.sx.study.Econtroller.test1(com.example.sx.study.Entity,org.springframework.validation.BindingResult)]
解决办法:
在@RequestBody后加上(required = false)


虽然通过此方法的确返回了信息 ,但是还是存在问题的。
写该类的目的是为了对于请求体(request body)传来参数进行校验,这种改法根本起不了作用。
正确改法:
打开postman,在Body中填入需要验证的数据。

这样才能达到参数检验的效果。
源码如下:
@Data
public class Entity{
@NotNull(message = "姓名不能为null")
private String name;
@Min(value = 30,message = "年龄最小为30")
private Integer age;
private Integer password;
private String sex;
}
@RestController
public class Econtroller {
@RequestMapping("test1")
public String test1(@Valid @RequestBody Entity entity, BindingResult result){
if (result.hasErrors()){
String defaultMessage = result.getFieldError().getDefaultMessage();
return defaultMessage;
}
System.out.println(entity);
return "注册成功";
}
}
希望有帮助!!!
完整错误:Resolved[org.springframework.http.converter.HttpMessageNotReadableException:Requiredrequestbodyismissing:publicjava.lang.Objectcom.example.sx.study.Econtroller.test1(com.example.sx.study.Entity,org.springframework.validation.BindingResult)]解决办法:在@RequestBody后加上(required=false)虽然通过此方法的确返回了信息,但是还
今天与到一个报错,分享一下这个报错的解决方案,都是自己学的太浅的原因导致卡了半个小时如图:在Post请求的过程中,前端是一个JSON对象以请求体的形式传到了后端,而后端是以一个列表接收,这样导致的问题就是接收的不是一个对象在Post请求想要接收请求体的数据必须以对象的方式接收参数,因为前端的Json对象转为对象后的请求体是以“ { } ”包括起来的,自然后端必须是以一个对象的方式来接收方案一:使用自定义对象接收请求体参数自定义对象Controller层打印数据 方案二:使用Map键值对接收参数Map键值对是一个比较常用而简单的接收前端参数,不用自定义对象Controller层打印数据方案三
今天与到一个报错,分享一下这个报错的解决方案,都是自己学的太浅的原因导致卡了半个小时如图:在Post请求的过程中,前端是一个JSON对象以请求体的形式传到了后端,而后端是以一个列表接收,这样导致的问题就是接收的不是一个对象在Post请求想要接收请求体的数据必须以对象的方式接收参数,因为前端的Json对象转为对象后的请求体是以“ { } ”包括起来的,自然后端必须是以一个对象的方式来接收方案一:使用自定义对象接收请求体参数自定义对象Controller层打印数据 方案二:使用Map键值对接收参数Map键值对是一个比较常用而简单的接收前端参数,不用自定义对象Controller层打印数据方案三