Java:hibernate-validator验证数据

简介: Java:hibernate-validator验证数据

依赖


https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator


<dependency>
     <groupId>org.hibernate.validator</groupId>
     <artifactId>hibernate-validator</artifactId>
     <version>6.1.2.Final</version>
 </dependency>

使用示例


package org.example;
import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Set;
class Person {
    @NotBlank
    @NotNull
    private String name;
    @Min(0)
    @Max(150)
    private int age;
    @NotNull
    private boolean gender;
    public Person(String name, int age, boolean gender) {
        this.name = name;
        this.age = age;
        this.gender = gender;
    }
}
public class ValidatorTest {
    public static void main(String[] args) {
        // 获取验证器
        ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
        Validator validator = factory.getValidator();
        // 数据验证
        Person person = new Person("", 151, false);
        Set<ConstraintViolation<Person>> violations = validator.validate(person);
        // 打印验证结果
        for(ConstraintViolation violation: violations){
            System.out.println(violation.getPropertyPath() + violation.getMessage());
        }
        /**
         * age最大不能超过150
         * name不能为空
         */
    }
}
相关文章
|
7月前
|
Java
Java @Data 注解详细说明
Data注解是 Lombok 提供的一个组合注解,它会为类自动生成一些常见方法的样板代码,包括 getter、setter、equals、hashCode 和 toString 方法。
963 5
|
7月前
|
前端开发 Java 数据库连接
9:参数校验-Java Spring
9:参数校验-Java Spring
58 0
|
6月前
|
Java API 数据处理
Java Bean参数验证:深入探索javax.validation.constraints注解
Java Bean参数验证:深入探索javax.validation.constraints注解
217 0
|
Java API
Java:SpringBoot整合hibernate-validator实现入参数据校验
Java:SpringBoot整合hibernate-validator实现入参数据校验
159 0
|
Java 数据库连接
Java:hibernate-validator验证数据
Java:hibernate-validator验证数据
113 0
|
缓存 Java 数据库连接
Java Bean Validation 详解(上)
前言 最近维护一个老项目,项目使用最原始的Servlet,项目中充斥着各种类似判空的简单校验,为了减少重复代码,因此需要手动引入 Java 的 Bean Validation。
360 0
Java Bean Validation 详解(上)
|
XML Java 关系型数据库
深入了解数据校验:Java Bean Validation 2.0(JSR303、JSR349、JSR380)Hibernate-Validation 6.x使用案例【享学Java】(上)
深入了解数据校验:Java Bean Validation 2.0(JSR303、JSR349、JSR380)Hibernate-Validation 6.x使用案例【享学Java】(上)
深入了解数据校验:Java Bean Validation 2.0(JSR303、JSR349、JSR380)Hibernate-Validation 6.x使用案例【享学Java】(上)
|
XML 缓存 安全
深入了解数据校验:Java Bean Validation 2.0(JSR303、JSR349、JSR380)Hibernate-Validation 6.x使用案例【享学Java】(中)
深入了解数据校验:Java Bean Validation 2.0(JSR303、JSR349、JSR380)Hibernate-Validation 6.x使用案例【享学Java】(中)
深入了解数据校验:Java Bean Validation 2.0(JSR303、JSR349、JSR380)Hibernate-Validation 6.x使用案例【享学Java】(中)
|
缓存 安全 Java
Java Bean Validation 详解(下)
前言 最近维护一个老项目,项目使用最原始的Servlet,项目中充斥着各种类似判空的简单校验,为了减少重复代码,因此需要手动引入 Java 的 Bean Validation。
404 0
|
Java 数据库连接 API
深入了解数据校验(Bean Validation):ValidatorFactory和Validator等核心API【享学Java】(上)
深入了解数据校验(Bean Validation):ValidatorFactory和Validator等核心API【享学Java】(上)
深入了解数据校验(Bean Validation):ValidatorFactory和Validator等核心API【享学Java】(上)