Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

Hibernate-validator: Hello World application

In this post, I am going to show you an example of bean validation API annotations @Min, @Size.

 

JSR 380 specification provides @Min, @Size annotation to validate the bean properties.

 

Below table summarizes these annotations.

 

Annotation

Description

@Min

If you annotate any number field with this annotation, then the element must be greater than or equal to the specified minimum value.

@Size

The annotated element size must be within given boundaries.

 

public class Employee {

@Min(value=1)
private int id;

@Size(min=5, max=30)
private String firstName;

@Size(min=5, max=30)
private String lastName;

.....
.....

}

 

For example,

 

@Min(value=1)

private int id;

I annotated id with @Min(value=1), this annotation make sure that the value of the id is >=1, else it generated validation error.

 

@Size(min=5, max=30)

private String firstName;

I annotated firstName with @Size(min=5, max=30), this annotation make sure that the length of the field firstName is minimum 5 character and maximum 30 character.

 

Find the below working application.

 

Employee.java
package com.sample.model;

import javax.validation.constraints.Min;
import javax.validation.constraints.Size;

public class Employee {

@Min(value=1)
private int id;

@Size(min=5, max=30)
private String firstName;

@Size(min=5, max=30)
private String lastName;

public Employee(int id, String firstName, String lastName) {
this.id = id;
this.firstName = firstName;
this.lastName = lastName;
}

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getFirstName() {
return firstName;
}

public void setFirstName(String firstName) {
this.firstName = firstName;
}

public String getLastName() {
return lastName;
}

public void setLastName(String lastName) {
this.lastName = lastName;
}

}

Test.java

package com.sample.test;

import java.util.Set;

import javax.validation.*;
import javax.validation.ValidatorFactory;

import com.sample.model.Employee;

public class Test {
public static void main(String args[]) {
ValidatorFactory validatorFactory = Validation.buildDefaultValidatorFactory();
Validator validator = validatorFactory.getValidator();

Employee emp = new Employee(-1, "Hareesh", "Ram");

Set> validationErrors = validator.validate(emp);

for (ConstraintViolation violation : validationErrors) {
System.out.println(violation.getPropertyPath() + "," + violation.getMessage());
}
}
}

When I ran above application, I seen below messages in the console.

id,must be greater than or equal to 1
lastName,size must be between 5 and 30

Since the fields id, firstName are violating the minimum requirements specified by using @Id, @Size annotations, validator generates these error messages.




Previous                                                    Next                                                    Home


This post first appeared on Java Tutorial : Blog To Learn Java Programming, please read the originial post: here

Share the post

Hibernate-validator: Hello World application

×

Subscribe to Java Tutorial : Blog To Learn Java Programming

Get updates delivered right to your inbox!

Thank you for your subscription

×