Kontext: Verwenden von Spring Boot 0.5.0-M7, MySQL und Commons DBCP, Java-Konfiguration, @EnableAutoConfiguration
festgelegt.Spring Boot JPA-Basiskonfiguration Vorrang vor App-Konfiguration
Ich habe den Antrag des DataSource
Bean definiert, JpaVendorAdapter
Bohne, LocalContainerEntityManagerFactoryBean
und TransactionManager
Bohnen mit spezifischer Konfiguration DBCP und einige Ruhen Einstellungen zu unterstützen. Beim Start der Anwendung wird die DataSource
definitiv eingehalten (Debug bestätigt), aber die anderen Beans werden ignoriert. Dies scheint als Folge der JpaBaseConfiguration
Klasse, die durch die WebMvcConfiguration
und einer seiner Sicherheitsfilter in den Mix gebracht wird. In jedem Fall besteht das Problem unter anderem darin, dass die Hibernate-Einstellung den hbm2ddl (Schema-Export) auf drop-create
setzt, sodass ich bei jedem Neustart des Servers meine Daten verliere.
Ich schaute durch die Quelle und fand, dass es scheint, Affordanz zu sein, um Umgebungsvariablen zu setzen, die in der JpaBaseConfiguration
respektiert werden, jedoch scheint dies das Einrichten von Beans zu besiegen, um die gleiche Arbeit zu machen. Ich habe versucht, einige Autoconfiguration-Klassen, die sich auf Daten beziehen, ohne Erfolg auszuschließen. Gibt es eine andere Erwartung für die Einrichtung einer nicht standardmäßigen Datenkonfiguration, die ich möglicherweise vermisse?
Die ddl-Einstellung sollte für MySQL "keine" sein. Sind Sie sicher, dass Sie keine eingebettete Datenbank verwenden? –
Sehr sicher, sehe ich die Verbindung zu MySQL in Debug-Protokolle, meine Tabelle hat Daten, beim Neustart wurde gelöscht und neu erstellt (bestätigt in MySQL Workbench) Debuggen in SchemaExport zeigt die Drop-Create-Einstellung wirksam werden. Ich werde versuchen mit einer SNAPSHOT-Build und sehen, ob sich das Verhalten ändert. – hoserdude