Hibernate может иногда генерировать обновления под вас!
Это происходит, например, если состояние объекта не синхронизировано с базой данных.Вы можете переопределить это поведение (см. 2-й пункт ниже) по мере необходимости ... Но часто это может привести к ошибкам в логике вашего приложения.
В вашем случае: это может происходить по двум причинам:
1) Hibernate анализирует публичные методы (например, методы получения и установки) для установки полей в вашемфайл отображения, основанный на HQL, который вы отправляете в качестве входных данных.Итак ... как это повлияет на вашу проблему?Хорошо ... если в ваших геттерах есть какая-то изощренная логика для ваших Java-бинов, эта логика может вызывать гибернацию для генерации некоторых обновлений, когда вы в конечном итоге делаете этот вызов, поскольку эти методы вызываются.
2) В некоторых известных случаях Hibernate выполняет обновления при вызове операторов выбора (т. Е. Грязных транзакций ).Иногда это можно исправить, установив «update = false» в ваших файлах .hbm.xml в соответствующих местах ...
См. Также: Использование Enum в Hibernate вызывает выбор, за которым следует оператор обновления