一、前端防君子、后端防小人。
通过在前端验证数据外、可以有效的防止数据不符合规则。但是除了可以在浏览器前端页面发送数据外,还可以通过postman等一系列工具向后端发送请求。
因此后端进行数据校验也是非常有必要的。通常的项目,前后端都要进行数据校验。
二、JSR303
JSR 是 Java Specification Requests 的缩写,即 Java 规范提案。
存在各种各样的 JSR,简单的理解为 JSR 是一种 Java 标准。
JSR 303 就是数据检验的一个标准(Bean Validation (JSR 303))。
参考:
https://www.jianshu.com/p/554533f88370
三、入门操作
3.1 给实体类的字段添加响应的校验注解
message为可以自定义的错误信息,有默认值,可以进入源码查看
校验注解有很多:
3.2、给controller方法参数添加注解,开启校验
3.3、使用bindingResult查看结果并处理。
四、验证注解
例如:
除此还有很多、需要根据情况选择。
空检查
@Null 验证对象是否为null
@NotNull 验证对象是否不为null, 无法查检长度为0的字符串
@NotBlank 检查约束字符串是不是Null还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格.
@NotEmp