L'introspection au service de contrôles paramétrés d'entités JPA

  Inscrivez-vous à la formation

Ce cours vous permettra de créer un outil de contrôle des entités JPA basé sur les annotations associées aux propriétés des classes entités (@Entity).

Il utilise l'introspection Java pour collecter toutes les informations nécessaires aux contrôles.

Les annotations prises en compte par l'outil sont :

  • @Column (en particulier les attributs nullable et length)
  • @Size
  • @Min
  • @Max
  • @NotNull
  • @NotEmpty
  • @NotBlank
  • @Positive
  • @PositiveOrZero
  • @Negative
  • @NegativeOrZero
  • @Future
  • @FutureOrPresent
  • @Past
  • @PastOrPresent

On utilisera également l'annotation @ManyToOne pour tester l'existence de la référence, l'attribut uniqueConstraints de l'annotation @Table pour contrôler l'unicité des éléments.
On créera une annotation spécifique @CheckValues pour définir une liste de valeurs possibles que l'outil utilisera pour vérifier la valeur du champ associé.

Si une liste de sous-entités est définie avec un attribut cascade égal à ALL, MERGE ou PERSIST, les contrôles seront effectués sur les sous-entités également.

Vous pourrez à partir de là étoffer votre outil pour prendre en compte d'autres contrôles basé sur vos propres annotations.



Votre formateur


Olivier Butterlin
Olivier Butterlin

Spécialisé dans le développement d'API et framework à l'usage des développeurs, j'ai travaillé 11 ans sur des systèmes iSeries (AS/400) à développer des applications système et de nombreux outils destinés aux développeurs.

J'ai conçu des API quand celles-ci n'existaient pas au catalogue IBM, certaines codées en MI (Machine Interface), un "assembleur évolué" pour l'OS/400.

J'ai assuré et développé des formations à destination des développeurs d'applications.


En 2000, je suis passé aux développements internet/intranet et je me suis spécialisé dans les technologies Java, en particulier la plate-forme Enterprise Edition (JEE ou Jakarta EE actuellement).

J'ai développé deux framework pour deux sociétés. Le dernier, orienté dictionnaire, permet de changer le comportement de l'application par une simple modification des données du dictionnaire.

A partir de 2006, j'ai utilisé les framework open-source (Struts, Spring, ...) et depuis 2012, j'utilise intégralement la norme EE (EJB3.x, JPA, JTA, JSF2.x, ...) pour développer des applications RIA avec PrimeFaces comme bibliothèque de composants graphiques.


Frequently Asked Questions


When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.
How long do I have access to the course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.

Commencez maintenant !