...
- @AssertFalse : doit être faux
- @AssertTrue : doit être vrai
- @DecimalMax : doit être un nombre inférieur ou égal à la valeur indiquée (représentation String d'un BigDecimal)
- @DecimalMin : doit être un nombre supérieur ou égal à la valeur indiquée (représentation String d'un BigDecimal)
- @Digits(integer=, fraction=) : doit être un chiffre (pour BigDecimal, BigInteger, String, byte, short, int, long)
- @Future : doit être une date dans le future
- Max : doit être un nombre inférieur ou égal à la valeur indiquée
- @Min : doit être un nombre supérieur ou égal à la valeur indiquée
- @NotNull : ne doit pas être null
- @Null : doit être null
- @Past : doit être une date dans le passé
- @Size(min=, max=) : doit avoir une taille comprise entre min et max (pour String et tableaux)
- @Pattern(regex=, flag=) : doit respecter la regex indiquée
- @Valid : doit être valide (pour un objet propriété d'un autre)
On peut également imaginer un bean qui cumulerait les annotations nécéssaires à la validation et les annotations nécessaires à la persistance.
Intégration Hibernate
http://www.hibernate.org/subprojects/validator.html
Implémentation hibernate validator intègre la validation du bean au niveau de la persistance.
elle propose quelques contraintes supplémentaires à celles de la spécifictation JSR 303 comme :
...