05 实体校验

实体校验

当我们表单数据提交的时候,前端的校验我们可以使用一些类似于jQuery Validate等js插件实现,而后端我们可以使用Hibernate validatior来做校验。

我们使用springboot框架作为基础,那么就已经自动集成了Hibernate validatior。

那么用起来啥样子的呢?

第一步:首先在实体的属性上添加对应的校验规则,比如:

@TableName("m_user")
public class User implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @NotBlank(message = "昵称不能为空")
    private String username;
    @NotBlank(message = "邮箱不能为空")
    @Email(message = "邮箱格式不正确")
    private String email;
    
    ...
}

第二步 :这里我们使用@Validated注解方式,如果实体不符合要求,系统会抛出异常,那么我们的异常处理中就捕获到MethodArgumentNotValidException。

  • com.gychen.controller.UserController
/**
     * 测试实体校验
     * @param user
     * @return
     */
    @PostMapping("/save")
    public Result save(@Validated @RequestBody User user) {
        return Result.succ(user);
    }
  • 在postman软件里写接口请求测试

请求类型为POST,URL为http://localhost:8081/user/save,依次选择Body->raw->JSON

{
    "_comment":"postman清求数据",
    "username":"gychen",
    "email":"xxx"
}

{
    "_comment":"服务器返回数据",
    "code": "-1",
    "msg": "邮箱格式不正确",
    "data": null
}
原文地址:https://www.cnblogs.com/nuister/p/13495377.html