Ich habe eine Reihe von Komponententests, die Apache Derby im Speicher verwenden.
Meine Verbindungs-URL lautet: jdbc:derby:memory:srf.derby;create=true
Ich habe festgestellt, dass jedes Mal, wenn eine als @Transactional
markierte Methode beendet wird, eine Derby-Warnung angezeigt wird.
Warum ist es? Was mache ich falsch?
Danke
Sie machen nichts falsch. Du gibst '; create = true' jedes Mal weiter, aber die Datenbank wird nur erstellt, wenn dein Programm das erste Mal darauf zugreift. Da es im Speicher ist, bleibt die Datenbank solange stehen, bis das Programm beendet wird. An diesem Punkt verschwindet es.
Sie können die Warnung vermeiden, indem Sie "; create = true" nur beim ersten Test in Ihrer Testsuite übergeben und dann müssen nachfolgende Tests diesen Wert nicht übergeben.
Oder Sie könnten sich einfach keine Gedanken über die Warnung machen.