AFAIK om die extra zoekopdrachten te verwijderen, verwijder al je modifiers naar je @Transactional
annotaties. De prijs die u betaalt voor het beperken van uw isolatieniveau tot READ_COMMITED
is dat Hibernate extra query's moet uitvoeren om te bepalen of de database vuil is. In 90% van de gevallen zijn deze modifiers niet nodig. Hibernate is er erg goed in om ervoor te zorgen dat uw gegevens schoon zijn zonder dat u deze beperkingen probeert toe te voegen.
Als het absoluut noodzakelijk is voor u om ervoor te zorgen dat uw isolatie READ_COMMITTED
is , kunt u niets doen aan de extra vragen.
Verhuizen naar een StatelessSession
gewoon om van die vragen af te komen is een slecht idee om precies de reden die u aanhaalt. Echt, de enige geldige reden om een StatelessSession
te gebruiken is voor grote batch-invoegingen van gegevens waarvan u weet dat ze niet zullen worden gelezen terwijl de invoeging plaatsvindt.