2017-02-12 3 views
4

Ich migriere meine Anwendung von Hibernate 4 in Hibernate 5. Meine Sequenz Dosis nicht arbeiten und Hibernate verwenden Sie unsere Standardsequenz anstelle meiner Sequenz. Meine Zuordnung config in hbm so ist meine Datenbank Oracle.Warum verwendet Hibernate 5 Sequenzgenerator den Standard Hibernate.seq anstelle meiner Sequenz?

<id name="id" column="Id" type="java.lang.Long"> 
    <generator class="sequence" > 
      <param name="sequence">SEQ_APP_Login_Log</param> 
    </generator> 
</id> 

nach google sagen einige Leute ändern Klasse org.hibernate.id.enhanced.SequenceStyleGenerator aber wieder arbeiten Dosis nicht.

Antwort

5

Es ist einfach. Das sequence Attribut hat sequence_name geändert:

<id name="id" column="Id" type="java.lang.Long"> 
    <generator class="sequence" > 
      <param name="sequence_name">SEQ_APP_Login_Log</param> 
    </generator> 
</id> 
+0

, wie kann ich mit sequence_name sowohl in dem Ruhezustand 4 und 5, I Rahmen haben, der in mehr als 10 Unternehmen App verwenden. Ich möchte in Hibernate 5 migrieren und dieses hbm ändern, aber ich möchte, dass mein Framework in beiden Versionen funktioniert –

+1

Sie können einen benutzerdefinierten Bezeichnergenerator wie in [diesem Artikel] (https://vladmihalcea.com/2016/06/13/ how-to-implementieren-a-custom-String-basierte-Sequenz-Kennung-Generator-mit-Ruhezustand /). –

Verwandte Themen