Validatie regels

De validatie regels worden bij elk veld of getter, door middel van annotaties aangegeven in onze model-objecten.

We sommen ze even op:

AnnotatieOmschrijving
@AssertFalseDe waarde moet false zijn.
@AssertTrueDe waarde moet true zijn.
@DecimalMaxDe decimale waarde moet kleiner of gelijk zijn aan de opgegeven waarde.
@DecimalMinDe decimale waarde moet groter of gelijk zijn aan de opgegeven waarde.
@DigitsDe decimale waarde moet een opgelegd aantal cijfers voor en na de komma hebben.
integer: aantal cijfers voor de komma
fraction: aantal cijfers na de komma
@EmailDe waarde moet een correct e-mail adres zijn.
@FutureDe datum of tijd moet in de toekomst liggen.
@FutureOrPresentDe datum of tijd moet in het heden of de toekomst liggen.
@MaxDe integer-waarde moet kleiner of gelijk zijn aan de opgegeven waarde.
@MinDe integer-waarde moet groter of gelijk zijn aan de opgegeven waarde.
@NegativeDe waarde moet een negatief getal zijn
@NegativeOrZeroDe waarde moet negatief of nul zijn
@NotBlankDe String-waarde mag niet leeg zijn. Dat wil zeggen dat ze niet null mag zijn en minstens 1 karakter bevatten dat geen spatie is.
Te gebruiken bij @Basic(optional=false)
@NotEmptyDe waarde mag niet leeg zijn. Dit heeft te maken met lijsten en mappen, de waarde mag niet null zijn en de verzameling mag niet leeg zijn.
Te gebruiken bij @Basic(optional=false)
@NotNullDe waarde mag niet null zijn.
Te gebruiken bij @Basic(optional=false)
@NullDe waarde moet null zijn.
@PastDe datum of tijd moet in het verleden liggen.
@PastOrPresentDe datum of tijd moet in het heden of verleden liggen.
@PatternDe waarde moet voldoen aan het patroon van een reguliere uitdrukking (regular expression/regEx)
@PositiveDe waarde moet een positief getal zijn.
@PositiveOrZeroDe waarde moet een positief getal of nul zijn.
@SizeDe grootte van de verzameling moet liggen tussen de volgende grenzen:
min: minimale grootte.
max: maximale grootte.
@ValidHet geassocieerde object moet ook gevalideerd worden. Dit kan enkel gebruikt worden bij ingesloten(embedded) objecten, niet voor echte relaties. De relaties worden automatisch gevalideerd.
Te gebruiken bij @Embedded

Opdracht:

Pas de voorgaande opdracht “contacts” aan zodat we gebruik maken van validatie.