TP3 : Validation et contrôle pendant la saisie d’un nouveau film
I- Les contrôles :
Contrôle 1 : Titre d’un film unique
Modifier le code de l’entité Film pour que le titre soit unique dans la base de données, il y a
2 façons de le faire : avec @UniqueConstraint ou @Column
@UniqueConstraint est utilisée pour définir l’unicité de valeur pour 1 ou plusieurs attributs
@Column est appliquée sur un seul attribut dans l’entité.
Utiliser le bloc try-catch suivant dans l’action d’ajout d’un film dans FilmController pour
traiter l’exception si on tente d’ajouter un film avec un titre existant :
try{ //code de l’ajout }
catch(DataIntegrityViolationException e){
// revenir à la vue ajout d’un film et afficher un message
d’erreur sous le champ titre
}
Contrôle 2 : le Titre doit commencer par une lettre majuscule
Utiliser l’attribut HTML pattern (avec les expressions régulières) dans le champ input
titre pour que son modèle respecte la condition qui commence par une Majuscule.
Contrôle 3 : limiter les valeurs de l’année de parution
Utiliser les attributs min et max pour définir un intervalle de valeur [1940-2023] avec 2023
représente l’année en cours (dynamique) pour l’attribut année de parution.
Contrôle 4 : le champ description obligatoire et doit contenir au moins 10 caractères
Ajouter les attributs nécessaires pour ces 2 contrôles.
Contrôle 5 : Choix d’un acteur obligatoire
Utiliser l’attribut required pour effectuer ce contrôle.
II- Recherche des films par année de parution
Dans FilmRepository, ajouter la signature de la méthode suivante qui recherche les films par
année de parution :
List<Film> findByAnneeparution(int annee) ;
Ajouter le nécessaire dans la couche service (interface et classe).
Dans la vue affiche ajouter un champ de type number et un bouton pour rechercher les
films ayant la même année de parution.
Ajouter dans FilmController l’action correspondante à la recherche. La même vue
affiche sera utilisée pour afficher le résultat de la recherche.
A. Ajroud 1 1MPSWM ISITCOM (22/23)