@Vaild注解使用

@Valid注解使用场景

@Vaild可帮助开发者进行参数校验, 如字符串的非空校验, 字符串的长度校验, 数字的最小最大值校验等. 可帮助开发者减少大量的参数校验代码代码.

使用步骤

  1. 直接在接口的参数对象前添加注解
@RequestMapping("/test")
public void testMethod (@Valid User user) {
}
  1. 在需要进行参数校验的参数上添加对应的注解
public class ProjectListVO {@NotNull(message = "用户id不能为空")private Integer userId;@Min(value = 1, message = "类型必须是数字且大于value中的值")private Integer userType;@NotBlank(message = "输入的字符串不为空, 且长度不能为0")private String userName;
}
  1. 在接收参数时, Spring就能根据相关的注解完成校验.

其余相关校验注解

@Null
限制只能为null

@NotNull
限制必须不为null

@AssertFalse
限制必须为false

@AssertTrue
限制必须为true

@DecimalMax(value)
限制必须为一个不大于指定值的数字

@DecimalMin(value)
限制必须为一个不小于指定值的数字

@Digits(integer,fraction)
限制必须为一个小数,且整数部分的位数不能超过integer,小数部分的位数不能超过fraction

@Future
限制必须是一个将来的日期

@Max(value)
限制必须为一个不大于指定值的数字

@Min(value)
限制必须为一个不小于指定值的数字

@Past
限制必须是一个过去的日期

@Pattern(value)
限制必须符合指定的正则表达式

@Size(max,min)
限制字符长度必须在min到max之间

@Past
验证注解的元素值(日期类型)比当前时间早

@NotEmpty
验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0)

@NotBlank
验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格

@Email
验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式

@Vaild注解使用详解相关推荐

  1. spring之旅第四篇-注解配置详解

    spring之旅第四篇-注解配置详解 一.引言 最近因为找工作,导致很长时间没有更新,找工作的时候你会明白浪费的时间后面都是要还的,现在的每一点努力,将来也会给你回报的,但行好事,莫问前程!努力总不会 ...

  2. Java 注解用法详解——@SuppressWarnings

    转自: https://www.cnblogs.com/fsjohnhuang/p/4040785.html Java魔法堂:注解用法详解--@SuppressWarnings 一.前言 编码时我们总 ...

  3. Java注解(Annotation)详解

    转: Java注解(Annotation)详解 幻海流心 2018.05.23 15:20 字数 1775 阅读 380评论 0喜欢 1 Java注解(Annotation)详解 1.Annotati ...

  4. Spring 3.0 注解注入详解

    Spring 3.0 注解注入详解 2011-04-15 09:44 17ZOUGUO ITEYE博客 我要评论(1) 字号:T | T AD: 一.各种注解方式 1.@Autowired注解(不推荐 ...

  5. spring MVC请求处理类注解属性详解

    spring MVC请求处理类注解属性详解

  6. Retrofit 注解参数详解

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/121000230 本文出自[赵彦军的博客] 系列文章推荐: Android Flow ...

  7. JAVA元注解@interface详解(@Target,@Documented,@Retention,@Inherited)

    转载自 JAVA元注解@interface详解(@Target,@Documented,@Retention,@Inherited) jdk1.5起开始提供了4个元注解,用来定义自定义注解的注解,它们 ...

  8. Spring 注解@Value详解

    一.spring(基础10) 注解@Value详解[1] 一 配置方式 @value需要参数,这里参数可以是两种形式: [html] view plaincopy @Value("#{con ...

  9. SpringBoot - @EnableConfigurationProperties注解使用详解

    @EnableConfigurationProperties注解的作用是什么? 将标注了@ConfigurationProperties注解的类注入到Spring容器中.该注解是用来开启对@Confi ...

最新文章

  1. mysql中blob_MySQL中的BLOB类型
  2. NYOJ-199 无线网络覆盖
  3. api 微信小程序组件库colorui_2020最全微信小程序UI组件库合集
  4. linux 有用的命令,linux有用命令(持续更新)
  5. [转载]C/C++框架和库
  6. NOI2016区间bzoj4653(线段树,尺取法,区间离散化)
  7. 朋友圈句句刺痛人心的唯美句子有哪些
  8. Silverlight在IE中无法显示但在Firefox中正常的原因和解决办法
  9. intellij idea 使用 git stash
  10. fastcopy会损坏硬盘_绚丽多彩 卓有不凡 三星移动固态硬盘T5金属红新品评测
  11. 腾讯tdsql如何对接mysql,数据库交付运维高级工程师-腾讯云TDSQL(MySQL版)认证考试(TCE)...
  12. 异速联未获取服务器信息,异速联客户端连接服务器的方法
  13. 毕向东Mysql教程_传智播客_毕姥爷_2012年毕向东Java基础教程_毕向东老师
  14. Android中TextToSpeech的使用
  15. PyWebIO 简单的Sanger截图应用
  16. “爆炸图“ArcGIS中制作一张好看的爆炸分析图(附练习数据)
  17. Maven中dependencyManagement标签的作用
  18. Excel无法跨表筛选,也不能多列筛选,要如何突破限制呢?本教材有方法
  19. Python还能火多久?
  20. 学习python用哪个app-python做app用什么工具

热门文章

  1. 【经验】如何学习插画的构图?插画构图的基本原则!
  2. Clojure 语言在 2020 年的现状
  3. Excel表格导入校验
  4. 低代码局中局:是IT革命还是高级外包? | 甲子光年
  5. java短链接_Java 网址短链接服务原理及解决方案
  6. Excel中使用名称定义常数
  7. mac系统恢复服务器上的安装器损坏,Mac提示App已损坏你应该将它移到废纸篓的解决方案-mac无法安装软件解决教程 - 河东软件园...
  8. 大型3d射击类游戏源码【突击风暴】,中文版本,可私服
  9. LQBv13-Python:猜年龄
  10. 【编程题】【Scratch四级】2021.09 小猫钓鱼