Spring MVC:Entity & Repository:Utilisateur

Dans cette partie on va Créer :

  1. 1Ajouter la dépendance hibernate-validator
  2. 2Création de l'entité Utilisateur.java
  3. 3Création du Repository UtilisateurRepository.java

1.Ajouter la dépendance hibernate-validator

Est un Jar qui permet de valider des données des inputs d'un formulaire:

<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.1.3.Final</version>
</dependency>
  1. @Email:

    Vérifie si la séquence de caractères spécifiée est une adresse e-mail valide.

  2. @Max(value=):

    Vérifie si la valeur annotée est inférieure ou égale au maximum spécifié.

  3. @Min(value=):

    Vérifie si la valeur annotée est supérieure ou égale au minimum spécifié

  4. @NotBlank:

    Vérifie que la séquence de caractères annotée n'est pas nulle et que la longueur coupée est supérieure à 0.

  5. @NotEmpty:

    Vérifie si l'élément annoté n'est ni nul ni vide.

  6. @Null:

    Vérifie que la valeur annotée est nulle

  7. @NotNull:

    Vérifie que la valeur annotée n'est pas nulle

  8. @Pattern(regex=, flags=):

    Vérifie si la chaîne annotée correspond à l'expression régulière en regextenant compte de la flagcorrespondance donnée

  9. @Size(min=, max=):

    Vérifie si la taille de l'élément annoté est comprise entre min et max (inclus)

  10. @Negative:

    Vérifie si l'élément est strictement négatif. Les valeurs nulles sont considérées comme invalides.

  11. @NegativeOrZero:

    Vérifie si l'élément est négatif ou nul.

XML bind

<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.1</version>
</dependency>

Création de l'entité Utilisateur.java

package com.ecomerce.models;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;

import org.hibernate.validator.constraints.Email;
import org.hibernate.validator.constraints.NotEmpty;

@Entity
public class Utilisateur {
@Id
@Column(name="id")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private int id;
@Size(min=3,message="la taille min est 3")
private String nom;
@Pattern(regexp="^[a-zA-Z]{3,12}",message="Seulement les lettres la taille doit etre de 3 à 12")
private String prenom;
@NotEmpty(message="Email obligatoire ")
@Email(message="doit etre email valide")
private String email;
private String cv;
private String photo;
@Pattern(regexp="^[a-zA-Z0-9]{3}",message="la taille doit être 3")
private String password;
@Min(value=18, message="l'age doit etre >=18")
@Max(value=45, message="l'age doit etre <=45")
private int age;
private boolean isactive=false ;//defautl value
//constructeur , setter,getters,...
public Utilisateur() {}
public Utilisateur(int id, String nom,String cv, String prenom, String email, String photo, String password, int age,
boolean isactive) {
super();
this.id = id;
this.nom = nom;
this.cv= cv;
this.prenom = prenom;
this.email = email;
this.photo = photo;
this.password = password;
this.age = age;
this.isactive = isactive;
}
public boolean isIsactive() {
return isactive;
}

public void setIsactive(boolean isactive) {
this.isactive = isactive;
}

public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNom() {
return nom;
}
public String getCv() {
return cv;
}
public void setCv(String cv) {
this.cv= cv;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getPrenom() {
return prenom;
}
public void setPrenom(String prenom) {
this.prenom = prenom;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPhoto() {
return photo;
}
public void setPhoto(String photo) {
this.photo = photo;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}

}

Création du Repository UtilisateurRepository.java

package com.ecomerce.DAO;
import java.util.List;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.CrudRepository;
import org.springframework.data.repository.query.Param;
import com.ecomerce.models.Utilisateur;
public interface UtilisateurRepository extends CrudRepository<Utilisateur,Integer> {
@Override
List<Utilisateur> findAll();
}

Dans le fichier de configuration Spring-serlet.xml changer update to create pour créer la table utilisateur

<beans:property name="jpaProperties">
<beans:props>
<beans:prop key="hibernate.hbm2ddl.auto">create</beans:prop>
</beans:props>
</beans:property>








Cours et TPs