Maven 3 + Hibernate 3.6 + Oracle 11g Beispiel (Anmerkung)
In diesem Lernprogramm werden die vorherigenHibernate3.6 XML mapping tutorial wiederverwendet und geändert. Die Hibernate-Zuordnungsdatei (hbm) wird jedoch durch den Hibernate / JPA-Anmerkungscode ersetzt.
Technologien in diesem Artikel:
-
Maven 3.0.3
-
JDK 1.6.0_13
-
Ruhezustand 3.6.3.final
-
Oracle 11g
1. pom.xml
Keine Änderung in der Datei vonpom.xml
, alle vorherigen Abhängigkeiten vonHibernate3.6
XML mapping tutorialkönnen wiederverwendet werden.
Note
Seit Hibernate 3.6 ist die Annotation in das Modulhibernate-core.jar
integriert. In der vorherigen Version, z. B. Hibernate 3.2, müssen Sie zusätzlichehibernate-annotations.jar
einfügen, damit dies funktioniert.
2. Hibernate Mapping-Datei löschen (hbm)
Löschen Sie die Datei "DBUser.hbm.xml
", die nicht mehr benötigt wird.
3. Modell aktualisieren
Wenn Sie „DBUser.java
“ aktualisieren, wird der JPA-Anmerkungscode eingefügt.
Datei: 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. Aktualisieren Sie die Konfigurationsdatei für den Ruhezustand
Aktualisieren Sie "hibernate.cfg.xml
", ersetzen Sie "mapping resource" durch "mapping class"
Aktualisieren Sie hibernate.cfg.xml folgendermaßen:
Dazu:
5. Dienstprogramm für den Ruhezustand
Kein Update für "HibernateUtil.java
", da im Ruhezustand 3.6 sowohl die XML-Zuordnung als auch die Annotation dieselbe "org.hibernate.cfg.Configuration" -Klasse verwenden.
Bye bye AnnotationConfiguration
Lesen Sie dies -AnnotationConfiguration
is deprecated in Hibernate 3.6
6. Überprüfen Sie die endgültige Projektstruktur
Überprüfen Sie Ihre Projektstruktur:
7. Starte es
Kein Update für "App.java
", führen Sie es einfach aus, und Sie sollten das gleiche Ergebnis wie bei den vorherigenHibernate3.6
XML mapping tutorial sehen.
Laden Sie es herunter -Maven3-Hibernate3.6-Oracle11-Annotation-Example.zip (7 KB)