实体字段校验@NotNull、@NotEmpty、@NotBlank
在前段向后端提交较多数据时,我们一般都会遇到字段校验的问题,使用Spring的字段验证很省事,一般会使用@NotNull、@NotEmpty、@NotBlank这三个东西,但使用的时候后端接收参数一定要注意接收参数的数据类型。
1.@NotNull:
不能为null,但可以为empty(""," “,” ") ,一般用在基本数据类型的非空校验上,而且被其标注的字段可以使用 @size/@Max/@Min对字段数值进行大小的控制
2.@NotEmpty:
不能为null,而且长度必须大于0(" “,” "),一般用在集合类上面
3.@NotBlank:
这玩意只能作用在接收的String类型上,注意是只能,不能为null,而且调用trim()后,长度必须大于0
实际开发中,这三个东西一定要分的清楚,乱用或者没注意容易吃亏。一次开发中就是由于开发人员的疏忽,一个BigDecimal的字段使用成了@NotBlank(还是@NotEmpty来着,记不清了,不重要_),然后导致服务器报错,后来将字段校验标签改成@NotNull后问题得到解决。
实体字段校验@NotNull、@NotEmpty、@NotBlank相关推荐
- java 实体字段校验@Valid - @NotNull @NotEmpty @NotBlank - ValidExceptionHandler
java 实体字段校验@NotNull @NotEmpty @NotBlank 注意在使用 @NotBlank 等注解时,一定要和 @valid 一起使用,否则 @NotBlank 不起作用. 1.@ ...
- Java校验注解@NotEmpty,@NotBlank,@NotNull的使用方法和区别
以上三个注解均是javax.validation.constraints包下的,用于属性上的: @NotEmpty.@NotBlank.@NotNull三个注解的区别: @NotEmpty: 用在集合 ...
- 注解@NotNull/@NotEmpty/@NotBlank
@NotNull:不能为null,但可以为empty @NotEmpty:不能为null,而且长度必须大于0 @NotBlank:只能作用在String上,不能为null,而且调用trim()后,长度 ...
- @NotNull :@NotEmpty @NotBlank :@NonNull:@Nullable 的区别
@NotNull : 用在基本类 型上 不能为null 但可以为空字符串 @NotEmpty : 用在集合类上 不能为空 并且长度必须大于0 @NotBlank : 只能作用在String上,不能为n ...
- 常用的校验注解之 @NotNull、@NotBlank、@NotEmpty 的区别
实体字段校验 @NotNull.@NotEmpty.@NotBlank 1.@NotNull 不能为 null,但可以为 empty,一般用在 Integer 类型的基本数据类型的非空校验上,而且被其 ...
- 常用校验注解@NotEmpty,@NotBlank,@NotNull,@Valid,@Validated用法区别,以及搭配 BindingResult使用,嵌套验证等《使用|CSDN创作打卡》
文章目录 一.常用注解@NotEmpty,@NotBlank,@NotNull介绍 二.@Valid与@Validated的使用与区别 2.1@Valid与@Validated区别: 2.2嵌套验证 ...
- @NotNull 、@NotBlank、@NotEmpty区别和使用
引言 今天在使用validation校验的时候,发现了使用校验不起作用,一时间有点摸不到头绪,就看了一下同事提交的代码,发现了问题在用@NotNull用法,用的有些错误,所以在这里讲一下@NotNul ...
- aop+注解 实现对实体类的字段校验_SpringBoot实现通用的接口参数校验
来自:掘金,作者:cipher 链接:https://juejin.im/post/5af3c25b5188253064651c76 原文链接:http://www.ciphermagic.cn/sp ...
- 开发中常见的@NotNull,@NotBlank,@NotEmpty注解的区别
@NotEmpty,@NotNull和@NotBlank的区别 @NotEmpty :不能为null,且Size>0 @NotNull:不能为null,但可以为empty,没有Size的约束 @ ...
最新文章
- Vue全局路由侦听beforeEach路由守卫附代码使用示例
- if(window.event) e = window.event
- .net中用Action等委托向外传递参数
- 九度 1550 分糖果
- 秒杀系统设计架构与实现
- Gerrit的用法及与gitlab的区别
- kfcm算法matlab实现,KFCM算法分析
- PostgreSQL 简单的查询
- hbuilder制作简单网页_企业信息化网站+营销服务之电子商务网站制作流程
- OpenCV-python学习笔记(四)——smoothing and blurring平滑和模糊
- mongodb修改最大连接数
- 创建一棵二叉树(C++)以及遍历
- 铁路“探花儿”:每天徒步8公里 一个月穿坏一双鞋
- uniapp如何引入全局js
- Druid java.sql.SQLException: connection holder is null
- 军事ar虚拟现实电子沙盘系统的功能
- Java 设置PDF文档过期时间(有效时间)
- PyQt5数据库开发2 5.1 QSqlQueryModel
- STM32要按复位键才能下载问题解决
- 统信软件:第一份收入破亿的答卷