2016-08-03 8 views
0

Ich möchte eine Bibliothek (jar) erstellen und JdbcTemplate verwenden, um die Arbeit mit Database zu vereinfachen. Diese Bibliothek wird jedoch in anderen Spring-Anwendungen verwendet. Und standardmäßig beeinflussen @Transactional Annonations in der Anwendung die Methoden in der Bibliothek (JdbcTemplate in der Bibliothek wird diese äußere Transaktion beachten). Also muss ich JdbcTemplate erstellen, damit äußere Transaktionen ignoriert werden. Ist das möglich?Wie Sie @Transactional in JdbcTemplate ignorieren

+0

'@Transaktional (REQUIRES_NEW)'? Im Allgemeinen sollten Sie jedoch dem externen Transaktionskontext beitreten. – chrylis

Antwort

0

Daher sollte sich die Propagation der Anwendungstransaktion nicht auf Ihre Bibliotheks-Transaktionsverwaltung auswirken. Ist das mein Verständnis korrekt?

Wenn Ja, Sie einen Blick auf Propagation.NOT_SUPPORTED, haben ref

Ich glaube, Sie Schnittstelle in Ihrer Bibliothek entwerfen werden, die durch die Anwendung verwendet öffentliche Methoden aussetzen wird, was passiert, wenn alle Interface-Methode mit @Transactional(propagation = Propagation.NOT_SUPPORTED) kommentiert? würde es dein Problem nicht lösen.