hibernate-validate的基本使用
发布日期:2021-06-29 18:10:35
浏览次数:2
分类:技术文章
本文共 2041 字,大约阅读时间需要 6 分钟。
1. hibernate-validate注解
Constraint | 详细信息 |
---|---|
@Valid | 被注释的元素是一个对象,需要检查此对象的所有字段值 |
@Null | 被注释的元素必须为 null |
@NotNull | 被注释的元素必须不为 null |
@AssertTrue | 被注释的元素必须为 true |
@AssertFalse | 被注释的元素必须为 false |
@Min(value) | 被注释的元素必须是一个数字,其值必须大于等于指定的最小值 |
@Max(value) | 被注释的元素必须是一个数字,其值必须小于等于指定的最大值 |
@DecimalMin(value) | 被注释的元素必须是一个数字,其值必须大于等于指定的最小值 |
@DecimalMax(value) | 被注释的元素必须是一个数字,其值必须小于等于指定的最大值 |
@Size(max, min) | 被注释的元素的大小必须在指定的范围内 |
@Digits (integer, fraction) | 被注释的元素必须是一个数字,其值必须在可接受的范围内 |
@Past | 被注释的元素必须是一个过去的日期 |
@Future | 被注释的元素必须是一个将来的日期 |
@Pattern(value) | 被注释的元素必须符合指定的正则表达式 |
被注释的元素必须是电子邮箱地址 | |
@Length | 被注释的字符串的大小必须在指定的范围内 |
@NotEmpty | 被注释的字符串的必须非空 |
@Range | 被注释的元素必须在合适的范围内 |
@NotBlank | 被注释的字符串的必须非空 |
@URL(protocol=,host=, port=,regexp=, flags=) | 被注释的字符串必须是一个有效的url |
@CreditCardNumber | 被注释的字符串必须通过Luhn校验算法,银行卡,信用卡等号码一般都用Luhn计算合法性 |
2. pom.xml 引入依赖
org.hibernate hibernate-validator 5.3.6.Final
3. user 实体类
/** * @Auther: csp1999 * @Date: 2020/12/17/21:07 * @Description: 用户实体类 */@Table(name = "tb_user") // tk_mapper 注解public class User { /** * 主键id */ @Id // tk_mapper 注解 @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; /** * 用户名(4-30位) * * hibernate-validator注解:被注释的字符串的大小必须在指定的范围内 * min:最小长度 * max:最大长度 * message:不符合条件时提示信息 */ @Length(min = 4,max = 30,message = "用户名必须在4-30位之间") private String username; /** * 密码 */ @JsonIgnore // 对象序列化为json 字符串时,忽略该属性,这样就可以不暴漏密码到前端 @Length(min = 4,max = 12,message = "用户密码必须在4-12位之间") private String password; /** * 电话 * * hibernate-validator注解:被注释的元素必须符合指定的正则表达式 * regexp = "^1[356789]\\d{9}$" : 满足电话号码的格式 */ @Pattern(regexp = "^1[356789]\\d{9}$",message = "电话格式不合法") private String phone; /** * 创建时间 */ private Date created; // setter/getter 方法略}
4. controller
/** * 用户注册 * * @param user 用户 * @param code 验证码 */@PostMapping("/register")@ResponseBodypublic String register(@Valid User user) { String msg = userService.register(user); return msg;}
转载地址:https://csp1999.blog.csdn.net/article/details/111409639 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月05日 19时07分15秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
docker系列6 :k8s集群[ 解压安装 ]
2019-04-29
centos7 基于rsync+inotify 实现定时备份
2019-04-29
指定IP进行 文件的分发
2019-04-29
基于http搭建本地yum仓库
2019-04-29
常规邮件基础
2019-04-29
邮件基础之 -- SMTP协议
2019-04-29
Java设计模式--责任链模式
2019-04-29
OpenCV的cvLoadImage函数
2019-04-29
OpenCV中与matlab中相对应的函数
2019-04-29
C/C++中二维数组作函数形参时,调用函数时,可传递的实参类型的小结
2019-04-29
cvGetSubRect与cvMul用法
2019-04-29
opencv图像处理梯度边缘和角点
2019-04-29
Caffe源码中blob文件分析
2019-04-29
OpenCV 图像采样 插值 几何变换
2019-04-29
图像处理-仿射变换 AffineTransform
2019-04-29
图像二值化----otsu(最大类间方差法、大津算法)
2019-04-29
图像二值化----otsu(最大类间方差法、大津算法)(二)
2019-04-29
软件包应用分享|基于RT-Thread的百度语音识别(一)
2019-04-29
基于 Keil MDK 移植 RT-Thread Nano
2019-04-29
移植 RT-Thread Nano 到 RISC-V
2019-04-29