Выбор режима Hibernate перед обновлением

В моей работе я использую Spring с exidirect, hibernate на стороне сервера и extjs на стороне клиента. Когда я отправляю форму, на стороне сервера весна преобразует ее в объект. Entity имеет поле id, которое предполагает операцию обновления. Я вызываю метод сохранения обслуживания, но вместо одного запроса на обновление sql я получаю много запросов на выбор и просто обновляю. Это занимает много времени. И нет необходимости в этой операции. Я искал похожие вопросы и пытался использовать метод persist . В этом случае я получаю ошибку: удаленный объект передан для сохранения.

У меня недостаточно опыта спящего режима. Может быть, мне нужно настроить связанные объекты (OneToMany, ManyToOne и типы каскадов). Объекты создаются инструментом Spring roo.

Какие-либо предложения ? Спасибо.

Это не окончательный ответ на ваш вопрос, но я надеюсь, что он может работать как руководство высокого уровня.

Когда вы создаете Entity с Spring, этот Entity отсоединяется, а Hibernate выполняет эти инструкции SELECT, потому что ему необходимо привязать ваше Entity до его сохранения. Кроме того, насколько я знаю, любая попытка присоединения Entity будет вызывать инструкции SELECT. Поэтому я твердо верю, что нет никаких способов сохранить / сохранить ваши отсоединенные сущности без этих операторов SELECT ( возможно, я ошибаюсь здесь).

Если вы беспокоитесь о производительности, вы можете попробовать добавить некоторые функции кеша в свое приложение. Кроме того, вы можете также включать решения JDBC только для операций, которые страдают от производительности.

Добавить @SelectBeforeUpdate (false) аннотацию к сущности.