JSR303验证基本使用

JSR303验证基本使用

今天使用了一个后端验证的框架JSR303。现在把使用的过程和结果写在下面,供大家参考。
1、maven创建一个quickstart的项目:
mvn archetype:generate -DarchetypeCatalog=internal
2、在项目的pom.xml文件中引入如下内容:

		
			javax.validation
			validation-api
			1.1.0.Final
		
		
		
			org.hibernate
			hibernate-validator
			5.2.4.Final
		

3、编写一个HelloWorld程序:
Student.java
package com.xueyoucto.xueyou;

import javax.validation.constraints.Min;
import javax.validation.constraints.Pattern;

public class Student {
	@Pattern(regexp="\\D{2,4}",message="名字不能包含数字")
	private String name;
	@Min(20)
	private int age;

	
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}
	
	


}
App.java
package com.xueyoucto.xueyou;

import java.util.Set;

import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;

/**
 * Hello world!
 *
 */
public class App 
{
    public static void main( String[] args )
    {
        System.out.println( "Hello World!" );
		Student s = new Student();
		s.setName("张三1");
		s.setAge(19);
		System.out.println(s.getName());
		System.out.println(s.getAge());
		ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
		Validator validator = factory.getValidator();
		Set> validators = validator.validate(s);
        for (ConstraintViolation constraintViolation : validators) {
            System.out.println(constraintViolation.getMessage());
        }
        if(validators.isEmpty()){
        	System.out.println("验证成功");
        }else{
        	System.out.println("验证失败");
        }
    }
}

4、运行程序,结果如下:
JSR303验证基本使用_第1张图片

5、如果运行的时候出现问题,最大的可能就是jar包引入的问题,建议去官网上下载,然后在放到自己的maven仓库中。
6、这是项目的目录:
JSR303验证基本使用_第2张图片

你可能感兴趣的:(java)