Ich notieren meine DAOs und verwenden hibernate3: hbm2ddl, um die ddls zu generieren. Gibt es eine Möglichkeit, den Tablespace mit Anmerkungen zu versehen?Hibernate Oracle Tablespace Annotation
6
A
Antwort
7
Nein, es gibt keine Möglichkeit, es aus der Box zu tun. Ich habe um es in der Vergangenheit bekam die folgende Verwendung - eher beteiligt - Ansatz:
- Erstellen Sie Ihre eigene Anmerkung,
@TableSpec
die Tabellen und andere notwendige Attribute. - Erweitern Sie
org.hibernate.cfg.Configuration
und überschreiben SiegetTableMappings()
, um dekorierteTable
Objekte zurückzugeben (siehe unten). - Erweitern Sie
org.hibernate.mapping.Table
und überschreiben SiesqlCreateString()
und/odersqlAlterStrings()
, um die Tabellenbereichsspezifikation anzuhängen (und ggf. weitere Einstellungen). - Statt mit hbm2ddl Werkzeug (oder Ant-Task) schreiben Sie Ihre eigene, die Ihren
Configuration
Objekt erstellen wird, verarbeiten alle Ihre Klassendateien zu sammeln und Ihre@TableSpec
Anmerkungen zu interpretieren und rufenConfiguration.generateSchemaCreationScript()
odergenerateSchemaUpdateScript()
tatsächlichen DDL zu erzeugen.
Wie gesagt, eher beteiligt :-) Als Alternative, wenn alle abgebildeten Tabellen denselben Tabellenbereich verwenden, können Sie Oracle-Dialekt erweitern Sie verwenden und außer Kraft setzen getTableTypeString()
Ihre Tabellen spec zurückzukehren. Während dies ein hässlicher Hack ist (weil der ursprüngliche Zweck von tableTypeString ist, den Motortyp MySQL zu liefern), funktioniert es und ist sicherlich viel schneller und einfacher als der obige Ansatz.
Verwandte Themen
- 1. Wahre Tablespace-Größe in Oracle
- 2. Hibernate Spatial Index Annotation
- 3. schrumpft permanenten Tablespace in Oracle 11g
- 4. Oracle Datenbank verschiedenen Tablespace für Index
- 5. Oracle 11g - Temp Tablespace-Segmente werden nicht freigegeben (Oracle Bug?)
- 6. Hibernate Annotation Platzierung Frage
- 7. Textfeld mit Hibernate Annotation
- 8. Hibernate 4 Annotation-Konfiguration
- 9. Hibernate Annotation (Pyramidenstruktur - gleiche Tabelle)
- 10. Hibernate Annotation für Lookup-Spalte
- 11. Oracle Hibernate Sequenzgenerator Problem
- 12. Was macht Hibernate @Proxy (lazy = false) Annotation?
- 13. @Id Annotation in JPA und Hibernate
- 14. Ausnahme bei der Verwendung Annotation in Hibernate
- 15. Wie generiert Hibernate Annotation den Primärschlüssel?
- 16. @Audited Annotation in Hibernate hbm Datei
- 17. Hibernate 5 Annotation org.hibernate.MappingException: Unbekannte Einheit
- 18. Hibernate Schemavalidierung schlägt auf Oracle Tabelle Synonyme
- 19. Hibernate Oracle und Character Encoding
- 20. Oracle Optimierer Hinweis mit Hibernate
- 21. Hibernate on Oracle: Zuordnung der String-Eigenschaft zur CLOB-Spalte
- 22. keine Privilegien für Tablespace 'USERS'
- 23. Temporäre Tablespace von CLOB nicht freigegeben
- 24. Verwendung regulärer Ausdrücke mit Hibernate/Oracle
- 25. Hibernate Dialekt für Oracle Database 11g?
- 26. Hibernate-Sequenz auf Oracle, @GeneratedValue (Strategie = GenerationType.AUTO)
- 27. Hibernate Autoschlüsselgenerierung mit MySQL und Oracle
- 28. Hibernate setFirstResult() Problem mit Oracle-JDBC-Treiber
- 29. Ziehen von Oracle-Sequenz mit Hibernate
- 30. Spring + Hibernate - Oracle UCP-Verbindungspool verwenden