Wie kann ich create-drop von JPA in Hibernate manuell aufrufen?

8

Ich brauche das für einen Integrationstest. Meine Umgebung ist JBoss 7, EJB3 mit JPA auf Hibernate 4, H2 In-Memory-Datenbank und Tests werden von Arquillian ausgeführt. Ich möchte in der Lage sein, die Datenbank zu löschen und neu zu erstellen, werden alle Tabellen auf persistence.xml und den Entitäten basieren. Ich weiß, dass ich es zu Beginn der Anwendung tun kann, indem ich Folgendes festlege:

%Vor%

Aber ich muss dies manuell aus dem Code nach dem ersten Drop tun und create passiert.

Ist es möglich? Was ist der einfachste Weg?

    
sm4 12.12.2013, 05:01
quelle

3 Antworten

3

Sie können dies programmatisch im Ruhezustand tun.

%Vor%

Die JavaDocs sind hier:

Ссылка Ссылка

    
HDave 18.12.2013 15:55
quelle
1

Sie können die Arquillian-Persistenzextension verwenden, um den Datenbankinhalt nach jedem Test mit der Annotation @UsingDataSet für die Testmethoden zu löschen: Ссылка

    
Xavier Coulon 23.12.2013 10:01
quelle
0

Ich denke, Sie müssen die Skripte manuell erstellen. Sie können dann ScriptRunner verwenden (kopieren Sie die Klasse in Ihr Projekt):

%Vor%     
Tarek 17.12.2013 13:48
quelle