HttpMessageNotReadableException: Required request body is missing:

完整错误:

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 "注册成功";
    }

}

 希望有帮助!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值