重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
使用SpringMVC怎么实现对数据进行校验?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
创新互联建站专注于宿松网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供宿松营销型网站建设,宿松网站制作、宿松网页设计、宿松网站官网定制、小程序设计服务,打造宿松网络公司原创品牌,更为您提供宿松网站排名全网营销落地服务。一、导入jar包
若要实现数据校验功能,需要导入必要的jar包,主要包括以下几个:
classmate-1.3.1.jar
hibernate-vapdator-5.4.1.Final.jar
hibernate-vapdator-annotation-processor-5.4.1.Final.jar
hibernate-vapdator-cdi-5.4.1.Final.jar
jboss-logging-3.3.0.Final.jar
vapdation-api-1.1.0.Final.jar
二、常用的校验注解
注解 | 功能 |
---|---|
@Null | 验证对象是否为 null |
@NotNull | 验证对象是否不为 null |
@AssertTrue | 验证 Boolean 对象是否为 true |
@AssertTrue | 验证 Boolean 对象是否为 false |
@Max(value) | 验证 Number 和 String 对象是否小于等于指定值 |
@Min(value) | 验证 Number 和 String 对象是否大于等于指定值 |
@DecimalMax(value) | 验证注解的元素值小于等于 @DecimalMax 指定的 value 值 |
@DecimalMin(value) | 验证注解的元素值大于等于 @DecimalMin 指定的 value 值 |
@Digits(integer,fraction) | 验证字符串是否符合指定格式的数字,integer 指定整数精度,fraction 指定小数精度 |
@Size(min,max) | 验证对象长度是否在给定的范围内 |
@Past | 验证 Date 和 Calendar 对象是否在当前时间之前 |
@Future | 验证 Date 和 Calendar 对象是否在当前时间之后 |
@Pattern | 验证 String 对象是否符合正则表达式的规则 |
@NotBlank | 检查字符串是不是 Null,被 Trim 的长度是否大于0,只对字符串,且会去掉前后空格 |
@URL | 验证是否是合法的 url |
验证是否是合法的邮箱 | |
@CreditCardNumber | 验证是否是合法的信用卡号 |
@Length(min,max) | 验证字符串的长度必须在指定范围内 |
@NotEmpty | 检查元素是否为 Null 或 Empty |
@Range(min,max,message) | 验证属性值必须在合适的范围内 |
三、修改实体类
在类的属性上进行标注,如:
public class User { @NotBlank(message = "Username can not be empty") private String username; @NotBlank(message = "password can not be blank") @Length(min = 6, max = 16, message = "The length of the password must be between 6 and 16 bits") private String password; @Range(min = 18, max = 60, message = "Age must be between 18 and 60 years old") private Integer age; @Pattern(regexp = "^1[3|4|5|7|8][0-9]{9}$", message = "Please enter the correct format of the phone number") private String phone; @Email(message = "Please enter a valid email address") private String email; // other... }