Création d'une entité persistante Java avec des zones persistantes

Ce démarrage rapide montre comment créer une nouvelle entité Java persistante. Nous allons créer une entité à associer à une table de base de données. Vous devrez aussi ajouter la table ADDRESS à votre base de données.

  1. Sélectionnez le projet JPA dans la vue Navigateur ou Explorateur de packages, puis cliquez sur Nouveau > Autre. La boîte de dialogue Sélection d'un assistant s'ouvre.

  2. Sélectionnez JPA > Entité et cliquez sur Suivant. La page Classe entité apparaît.

  3. Entrez le nom de package (par exemple quickstart.demo.model), le nom de classe (par exemple Address) et cliquez sur Suivant. La page Propriétés d'entité s'affiche ; elle vous permet de définir les zones de persistance que vous mapperez sur les colonnes d'une table de base de données.

  4. La boîte de dialogue Zones d'entité (appelée via la sélection de l'option Ajouter) vous permet d'ajouter des zones de persistante à la classe Address :

    private Long id;
    private String city;
    private String country;
    private String stateOrProvince;
    private String postalCode;
    private String street;
    

    Remarque :

    Vous devrez aussi ajouter les colonnes suivantes à la table de base de données ADDRESS :
    NUMBER(10,0) ADDRESS_ID (primary key)
    VARCHAR2(80) PROVINCE
    VARCHAR2(80) COUNTRY
    VARCHAR2(20) P_CODE
    VARCHAR2(80) STREET
    VARCHAR2(80) CITY
    

  5. Cliquez sur Terminer. Une fois la procédure Créer une entité JPA terminée, Eclipse affiche l'entité Address dans la vue Structure JPA.

    Address.java contient l'annotation @Entity, les zones de persistance, ainsi que des méthodes getter et setter pour chacune des zones.

Entité Address dans Address.java

Editeur Java avec l'entité Address

Eclipse affiche aussi l'entité Address dans la vue Structure JPA :

Entité Address dans la vue Structure JPA

Address.java dans la vue Structure JPA
  1. Sélectionnez la classe Adresse dans l'Explorateur de projets.

  2. Dans la vue Caractéristiques JPA, notez que Dali a automatiquement associé la table de base de données ADDRESS à l'entité parce qu'elles portent le même nom.


    Remarque :

    Suivant le type de connexion à votre base de données, vous devrez peut-être indiquer le Schéma.

    Vue Caractéristiques JPA pour l'entité Address

    Address.java dans la vue Caractéristiques JPA

Conseil :

Après avoir associé l'entité à la table de base de données, vous devez mettre à jour le fichier persistence.xml pour inclure cette entité JPA.

Cliquez avec le bouton droit de la souris sur le fichier persistence.xml dans l'explorateur de projets et sélectionnez Outils JPA > Synchroniser la liste de classes. Dali ajoute ce qui suit au fichier persistence.xml :

<class>quickstart.demo.model.Address</class>


Nous sommes maintenant prêts à mapper chaque zone de la classe Address à une colonne dans la table de base de données.

  1. Sélectionnez la zone id dans la vue Caractéristiques JPA.

  2. Cliquez avec le bouton droit de la souris sur l'ID, puis sélectionnez Mapper comme > ID.

  3. Dans la vue Caractéristiques JPA, sélectionnez ADDRESS_ID dans la zone Nom :

    Vue Caractéristiques JPA pour la zone addressId

    Vue Caractéristiques JPA correspondant à l’attribut d'ID de l'entité d'adresse.

    Eclipse ajoute les annotations suivantes à l'entité Address :

    @Id
    @Column(name="ADDRESS_ID")
    
  4. Mappez chacune des zones suivantes (comme des mappages de base) à la colonne appropriée de la base de données :

    Zone Mapper en tant que Colonne de la base de données
    city Base CITY
    country Base COUNTRY
    postalCode Base P_CODE
    provinceOrState Base PROVINCE
    street Base STREET

Si les noms sont identiques, Dali mappe automatiquement certaines zones sur la colonne de base de données qui convient (par exemple : la zone city sur la colonne City).