当前位置:   article > 正文

java 实体类校验_实体类的验证

java实体类校验

@Valid注解用于校验,所属包为:javax.validation.Valid。

① 首先需要在实体类的相应字段上添加用于充当校验条件的注解,如:@Min,如下代码(age属于Girl类中的属性):

@Min(value = 18,message = "未成年禁止入内")

private Integer age;

② 其次在controller层的方法的要校验的参数上添加@Valid注解,并且需要传入BindingResult对象,用于获取校验失败情况下的反馈信息,如下代码:

@PostMapping("/girls")

public Girl addGirl(@Valid Girl girl, BindingResult bindingResult) {

if(bindingResult.hasErrors()){

System.out.println(bindingResult.getFieldError().getDefaultMessage());

return null;

}

return girlResposity.save(girl);

}

bindingResult.getFieldError.getDefaultMessage()用于获取相应字段上添加的message中的内容,如:@Min注解中message属性的内容

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

1.比较

@Valid是使用hibernate validation的时候使用

@Validated 是只用spring  Validator 校验机制使用\

2.实现

其中,@valid,java的jsr303声明了这类接口,hibernate-validator对其进行了实现

3.依赖

在使用maven框架整合时,需要引入的依赖部分如下:

48304ba5e6f9fe08f3fa1abda7d326ab.png

javax.validation

validation-api

1.1.0.Final

org.hibernate

hibernate-validator

5.2.1.Final

48304ba5e6f9fe08f3fa1abda7d326ab.png

4.JSR303定义的校验类型

48304ba5e6f9fe08f3fa1abda7d326ab.png

空检查

@Null 验证对象是否为null

@NotNull 验证对象是否不为null, 无法查检长度为0的字符串

@NotBlank 检查约束字符串是不是Null还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格.

@NotEmpty 检查约束元素是否为NULL或者是EMPTY.

Booelan检查

@AssertTrue 验证 Bo

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/310848
推荐阅读
相关标签
  

闽ICP备14008679号