Mysql
 sql >> Database >  >> RDS >> Mysql

Query non necessarie in Hibernate - MySql

AFAIK per rimuovere quelle query extra, rimuovi tutti i tuoi modificatori al tuo @Transactional annotazioni. Il prezzo che paghi per limitare il tuo livello di isolamento a READ_COMMITED è che Hibernate dovrà eseguire query aggiuntive per determinare se il database è in uno stato sporco. Per il 90% dei casi, questi modificatori non sono necessari. Hibernate è molto efficace nel garantire che i tuoi dati siano puliti senza che tu provi ad aggiungere queste restrizioni.

Se è assolutamente necessario per te assicurarti che il tuo isolamento sia READ_COMMITTED , non puoi fare nulla per le query extra.

Passaggio a una StatelessSession solo per sbarazzarsi di quelle domande è una cattiva idea esattamente per il motivo che hai indicato. Davvero, l'unico motivo valido per utilizzare una StatelessSession è per inserimenti batch di grandi dimensioni di dati che sai non verranno letti durante l'inserimento.