javax.validation:validation-api 常用注解

得意时要看淡,失意时要看开。不论得意失意,切莫大意;不论成功失败,切莫止步。志得意满时,需要的是淡然,给自己留一条退路;失意落魄时,需要的是泰然,给自己觅一条出路javax.validation:validation-api 常用注解,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

概述

在我们应用程序的业务逻辑中,经常会碰到参数校验的情况,手动的在代码层上面进行校验就会带来很不好的体验,阅读、维护的成本会大大增加,造成冗余。因此有了这个JSR 303。

JSR-303 是Java EE 6 中的一项子规范,叫做BeanValidation。
Bean Validation为JavaBean提供了相应的API来给我们做参数的验证。
Bean Validation 是一个运行时框架,在验证之后错误信息会直接返回。

完整的jar包:javax.validation:validation-api:2.0.1.Final.jar

注意:SpringBoot2 项目web组件已经内置了这个依赖了

<!--添加依赖-->
<dependency>
 <groupId>javax.validation</groupId>
 <artifactId>validation-api</artifactId>
 <version>2.0.1.Final</version>
</dependency>

官方参考实现是hibernate-validator。
hibernate-validator实现了JSR-303规范,需要引入

<dependency> 
	<groupId>org.hibernate</groupId>
	<artifactId>hibernate-validator</artifactId>
	<version>5.1.3.Final</version>
</dependency>

通过Bean Validation比如@NotNull @Pattern等方法来对我们字段的值做进一步的校验;

@NotEmpty

The annotated element must not be {@code null} nor empty. Supported types are:
不能是null
不能是空字符
集合框架中的元素不能为空
加了@NotEmpty注解的String类 ,Collection集合,Map ,数组,这些是不能为null或者长度为0的;
(String ,Collection,Map的isEmpty()方法)

@NotNull

主要用在基本数据类型上(Int,Integer,Double)

被修饰元素不能为null
举例:
@NotNull(message = “年龄不能为空”)
private Integer age;

@NotBlank

主要用在String字符串上面(String)
只能用于字符串不为null,并且字符串trim()以后length要大于0

The annotated element must not be {@code null} and must contain at least one
non-whitespace character.(必须包含至少一个非空白字符。)
这个注解用来判断字符串或者字符
举例:
@NotBlank(message = “名字不能为空”)
private String name;

相关参考

@Validated和@Valid的使用总结

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/155688.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!