Ausschließen, dass eine bestimmte Tabelle von Hibernate erstellt wird?

8

Ich habe eine @Entity , die einer Ansicht zugeordnet ist, hier sieht es so aus

%Vor%

Das funktioniert einwandfrei, ich kann Datensätze aus der Ansicht mit dem Dao abrufen. Allerdings habe ich in den Protokollen festgestellt, dass Hibernate tatsächlich versucht, die Tabelle zu erstellen, aber scheitert, weil sie bereits existiert.

  

2015-11-12 21: 56: 34.841 FEHLER 4204 --- [ost-startStop-1]   org.hibernate.tool.hbm2ddl.SchemaExport: HHH000389: Erfolglos:   create table user_profile (Benutzer-ID bigint not null, avg_airtime   Ganzzahl, avg_fuel_points Ganzzahl, avg_miles Ganzzahl, E-Mail   varchar (255), Vorname varchar (255), flights_count integer,   fernest_flight Integer, Nachname varchar (255), lontest_flight   integer, most_visited_city varchar (255), Ganzzahl tier_end, tier_start   Ganzzahl, Primärschlüssel (user_id)) 2015-11-12 21: 56: 34.841 ERROR 4204 ---   [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport: Tabelle   'user_profile' existiert bereits

Kann ich Hibernate so konfigurieren, dass die Erstellung solcher Entitäten übersprungen wird? Ich dachte, die Annotation @Immutable weist Hibernate an, die Erstellung zu überspringen, aber diese Annotation dient nur dazu, Crud-Operationen auf der Tabelle zu verhindern.

    
prettyvoid 12.11.2015, 20:16
quelle

1 Antwort

11

Die Annotation @Subselect ist die einzige Annotation in Hibernate, die die Erstellung der entsprechenden Tabelle für @Entity verhindert:

%Vor%     
Tobias Liefke 13.11.2015, 09:19
quelle

Tags und Links