Spring:Entity et repository

1.Création d'une entité

entité est un objet (table) créer dans une base de données permettant de stocker et gérer des données formatter

Exemple:

  1. 1Produit(id,nom,marque,prix,qtesSock)
  2. 2Client(id,nom,prenom,tel,email,password)

L'entité : Produit.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.persistence.Table;

/*Entity :permet de créer la table dans la base de donnnées */
@Entity
/*Table:personnalier le nom de la table sinon la table sera crée avec le meme nom que la classe*/
@Table(name="produits")
public class Produit {
//Id:primary key de la table produits
@Id
//Column:si vous voullez personnaliser le nom d'une colonne
@Column(name="id")
//la Valeur de la colonne id est auto_increment
@GeneratedValue(strategy=GenerationType.IDENTITY)
private int id;
//libelle sera le nom de la colonne qui correspond le nom dans la classe produit
@Column(name="libelle")
private String nom;
//une colonne marque sera crée dans la table produits
private String marque;
//la colonne prix
private float prix;
//la colonne qteStock
private int qteStock;
//les constructeurs ,setter ,getter Sont obligatoires

public Produit() {}
public Produit(int id, String nom, String marque, float prix, int qteStock) {
super();
this.id = id;
this.nom = nom;
this.marque = marque;
this.prix = prix;
this.qteStock = qteStock;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getMarque() {
return marque;
}
public void setMarque(String marque) {
this.marque = marque;
}
public float getPrix() {
return prix;
}
public void setPrix(float prix) {
this.prix = prix;
}
public int getQteStock() {
return qteStock;
}
public void setQteStock(int qteStock) {
this.qteStock = qteStock;
}
}

1.Création d'un Repository

Une interface de L'API Java Persistence (JPA) permettant de conserver des objets Java dans des bases de données relationnelles . Le JPA se compose de deux parties : un sous-système de mappage pour mapper des classes sur des tables relationnelles ainsi qu'une API EntityManager pour accéder aux objets, définir et exécuter des requêtes

Le Repository :ProduitRepository.java

package com.ecomerce.DAO;

import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;

import com.ecomerce.models.Produit;
//Repository:création d'un repository le jpa va cherher les interfaces qui ont
//cette annoation afin de générer les méthodes de transaction à la base de données
@Repository
public interface ProduitRepository extends CrudRepository<Produit, Integer> {
/* <Produit=>l'entité à gérer
Integer :le type de la clé primaire id int ;>

les méthodes générique:
save(produit)
findById(id)
findAll()
finByNom(nom)
findByMarque(marque)
findByPrixAndMarque(prix,marque)
findByPrixOrMarque(prix,marque)
....
deleteById(id)
deleteAll()
...
*/
}









Cours et TPs