Zum Hauptinhalt springen

Datenzugriff und Transaktionen

Worauf die Prüfung abzielt

Spring-Data-Repositories, JPA-Beziehungen, Transaktionsgrenzen, typische Performance-Fallen.

Das musst du können

  • Spring Data JPA erzeugt Repository-Implementierungen zur Laufzeit.
  • Query Methods leiten sich aus Methodennamen ab.
  • @Transactional läuft in typischen Apps proxy-basiert.
  • Transaktionen gehören meist auf Service-Methoden.
  • Rollback standardmäßig bei unchecked Exceptions.
  • Entity-Beziehungen beeinflussen SQL und Laden.
  • Lazy Loading, N+1 und Transaktionsgrenzen im Blick behalten.

Passende Buchkapitel

Typische Prüfungsfalle

Self-Invocation: Ruft eine Methode in derselben Klasse eine andere @Transactional-Methode auf, geht der Aufruf am Proxy vorbei — transaktionales Verhalten greift oft nicht.

Kurz selbst prüfen

  • Was generiert Spring Data?
  • Warum Transaktionen auf Services?
  • Rollback-Defaults?
  • Lazy Loading und N+1 in einfachen Worten?
Musterantworten

Spring Data erzeugt Laufzeit-Implementierungen für Repository-Interfaces — CRUD und Query Methods inklusive.

Services definieren Use Cases und klare Transaktionsgrenzen — deshalb gehört @Transactional dorthin.

Standard: Rollback bei unchecked Exceptions und Errors. Checked Exceptions nur mit Konfiguration.

Lazy = verknüpfte Daten erst beim Zugriff. N+1 = eine Query für Eltern, dann pro Kind eine weitere.

Merksatz

Repositories für Persistenz. Services für Transaktionsgrenzen.