Maven 3 Exemple Hibernate 3.6 Oracle 11g (Annotation)

Exemple Maven 3 + Hibernate 3.6 + Oracle 11g (annotation)

Ce didacticiel réutilisera et modifiera lesHibernate3.6 XML mapping tutorial précédents, mais remplacera le fichier de mappage Hibernate (hbm) par le code d'annotation Hibernate / JPA.

Technologies dans cet article:

  1. Maven 3.0.3

  2. JDK 1.6.0_13

  3. Hibernate 3.6.3.final

  4. Oracle 11g

1. pom.xml

Aucun changement dans le fichierpom.xml, toutes les dépendances précédentes deHibernate3.6 XML mapping tutorial peuvent être réutilisées.

Note
Depuis Hibernate 3.6, l'annotation est intégrée dans le modulehibernate-core.jar. Dans la version précédente, par exemple, Hibernate 3.2, vous devez inclure deshibernate-annotations.jar supplémentaires pour que cela fonctionne.

2. Supprimer le fichier de mappage Hibernate (hbm)

Supprimez le fichier «DBUser.hbm.xml», il n’en a plus besoin.

3. Mettre à jour le modèle

Mettre à jour «DBUser.java», place le code d'annotation JPA à l'intérieur.

Fichier: DBUser.java

package com.example.user;

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
@Table(name = "DBUSER")
public class DBUser implements java.io.Serializable {

    private int userId;
    private String username;
    private String createdBy;
    private Date createdDate;

    public DBUser() {
    }

    public DBUser(int userId, String username, String createdBy,
            Date createdDate) {
        this.userId = userId;
        this.username = username;
        this.createdBy = createdBy;
        this.createdDate = createdDate;
    }

    @Id
    @Column(name = "USER_ID", unique = true, nullable = false, precision = 5, scale = 0)
    public int getUserId() {
        return this.userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }

    @Column(name = "USERNAME", nullable = false, length = 20)
    public String getUsername() {
        return this.username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    @Column(name = "CREATED_BY", nullable = false, length = 20)
    public String getCreatedBy() {
        return this.createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    @Temporal(TemporalType.DATE)
    @Column(name = "CREATED_DATE", nullable = false, length = 7)
    public Date getCreatedDate() {
        return this.createdDate;
    }

    public void setCreatedDate(Date createdDate) {
        this.createdDate = createdDate;
    }

}

4. Mettre à jour le fichier de configuration Hibernate

Mettez à jour «hibernate.cfg.xml», remplacez «mapping resource» par «mapping class»

Mettez à jour hibernate.cfg.xml à partir de ceci:


  
    
    
  

Pour ça :


  
    
    
  

5. Utilitaire Hibernate

Pas de mise à jour sur «HibernateUtil.java», depuis Hibernate 3.6, le mappage XML et les annotations partagent la même classe «org.hibernate.cfg.Configuration».

Bye bye AnnotationConfiguration
Lire ceci -AnnotationConfiguration is deprecated in Hibernate 3.6

6. Revoir la structure finale du projet

Passez en revue la structure de votre projet:

folder structure

7. Exécuter

Aucune mise à jour sur «App.java», aussi, lancez-le simplement, et vous devriez voir le même résultat que lesHibernate3.6 XML mapping tutorial précédents.