2016-06-13 5 views
0

мне нужно реализовать ограничение диапазона на полях данных Entity:Bean Validation ограничение диапазона

@Entity 
@Table(name = "T_PAYMENT") 
public class Payment extends AbstractEntity { 

    //.... 

    //Something like that 
    @Range(minValue = 80, maxValue = 85) 
    private Long paymentType; 

} 

Я уже создал проверку службы, но должен реализовать многие из этих случаев.

Мне нужно приложение, чтобы исключить исключение, если вставленный номер находится за пределами допустимого диапазона.

+1

Вы можете определить диапазон, используя следующую аннотацию. '@Max (85) \t @Min (5)' и если вы хотите определить пользовательские сообщения для этой проверки, вам необходимо создать пользовательские ограничения. См. Это [ссылка] (http://www.thejavageek.com/2014/05/24/jpa-constraints/) – ypp

+0

http://stackoverflow.com/questions/5129825/difference-between-max-and-decimalmax- и-м-и-decimalmin –

ответ

2

Вам нужно hibernate-validator

Please refer to this official documentation.

Аннотация

@Range(min=, max=) 

Поддерживаемые данные Тип

BigDecimal, BigInteger, CharSequence, byte, short, int, long and the respective wrappers of the primitive types 

Использование

Checks whether the annotated value lies between (inclusive) the specified minimum and maximum 
1

С hibernate-validator зависимость можно определить проверку диапазона

@Min(value = 80) 
@Max(value = 85) 
private Long paymentType; 

В pom.xml добавить ниже зависимость

<dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-validator</artifactId> 
     <version>{hibernate.version}</version> 
    </dependency>