@Pattern annotation is applied on a CharSequence (string), it makes sure that given field matches to the regular expression.
Example
@Pattern(regexp = "[a-zA-Z ]*")
private String name;
Employee.java
package com.sample.app.model;
import java.util.Date;
import javax.validation.constraints.Pattern;
public class Employee {
private int id;
@Pattern(regexp = "[a-zA-Z ]*")
private String name;
public Date joinedDate;
public Employee(int id, String name, Date joinedDate) {
this.id = id;
this.name = name;
this.joinedDate = joinedDate;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getJoinedDate() {
return joinedDate;
}
public void setJoinedDate(Date joinedDate) {
this.joinedDate = joinedDate;
}
}
Test.java
package com.sample.app;
import java.util.Calendar;
import java.util.Set;
import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;
import com.sample.app.model.Employee;
public class Test {
private static ValidatorFactory validatorFactory = Validation.buildDefaultValidatorFactory();
private static Validator validator = validatorFactory.getValidator();
private static void validateBean(Employee emp) {
System.out.println("************************************");
Set<ConstraintViolation<Employee>> validationErrors = validator.validate(emp);
if (validationErrors.size() == 0) {
System.out.println("No validation errors....");
}
for (ConstraintViolation<Employee> violation : validationErrors) {
System.out.println(violation.getPropertyPath() + "," + violation.getMessage());
}
System.out.println("");
}
public static void main(String args[]) {
Employee emp1 = new Employee(1, "Rama Krishna", Calendar.getInstance().getTime());
System.out.println("Validation errors on bean emp1");
validateBean(emp1);
Employee emp2 = new Employee(2, "Siva", Calendar.getInstance().getTime());
System.out.println("Validation errors on bean emp2");
validateBean(emp2);
Employee emp3 = new Employee(3, "Siva553", Calendar.getInstance().getTime());
System.out.println("Validation errors on bean emp3");
validateBean(emp3);
}
}
Output
Validation errors on bean emp1 ************************************ No validation errors.... Validation errors on bean emp2 ************************************ No validation errors.... Validation errors on bean emp3 ************************************ name,must match "[a-zA-Z ]*"
Previous Next Home
No comments:
Post a Comment