enötigen Sie eine Datenbanktransaktion zum Lesen von Date

Wenn ich versuche, Daten aus der Datenbank zu lesen, benutze ich mindestens

((Session)em.getDelegate()).createCriteria()

Eine Ausnahme sind Auslösungen, die besagen, dass eine Transaktion nicht vorhanden ist.

Wenn ich die Anmerkung hinzufüge:

@Transactional(
    value = SomeClass.TRANSACTIONAL_MANAGER, 
    propagation = Propagation.SUPPORTS, 
    readOnly = true
)

es funktioniert gut

Da das Lesen jedoch millionenfach pro Sekunde erfolgt, um auf Daten zuzugreifen und diese zu lesen, möchte ich sicherstellen, dass unsere Umgebung nicht unnötig verstopft wird.

Wenn nicht, wie hoch sind die Kosten für das Erstellen eines schreibgeschütztenPropagation.Supports transaction?

Kann ich in Kombination mit Spring keine Ruhezustand-Kriterienabfrage ohne Transaktion erstellen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage