В спящем режиме, если динамическое обновление включено, в то время как обновление объекта он генерирует запрос только для измененных столбцовДинамического обновления с композитным ид зимует
Рассмотрят класс с композиционно-ид с использованием компонентами. Composite-id saveOrupdate объект. Если данный ключ не является БД, он добавляет, в противном случае обновляет объект
Теперь, что я хочу, как я могу объединить эти 2 функции? Например, у меня есть класс с 3 атрибутами: возраст, зарплата, адрес и составной ключ и имя.
Для ключа «1-Мохан» У меня уже есть записи для возраста = 22, зарплата = 30000, адрес = XXX. Теперь я хочу только обновить свою зарплату до 40000. Когда я создаю новый экземпляр с ключом «1-mohan» и устанавливаю только зарплату = 4000 и сохраняется. Теперь запись заполняет нулевые значения для возраста и адреса, поскольку динамическое обновление происходит только для объекта, извлеченного из БД.
Есть ли способ сохранить существующие значения без изменений и обновить только данный атрибут без извлечения объекта из базы данных?
Да, я это знаю. Но мой вопрос заключается в том, что мы используем динамическое обновление с составным идентификатором. В этом случае мы создаем только новый объект и даем для saveOrupdate –
@MohanRajB, я не понимаю, что вы пытаетесь сказать, если вы создаете новый объект и просто устанавливаете поле 'salery', тогда hibernate будет устанавливать значения« null »для все другие свойства, даже если у вас нет 'dymaic-update', тогда нет проблем? – Chaitanya
да, вы правы. Я создаю новый объект с одним ключом, а в БД существует объект, уже имеющий тот же ключ (составной идентификатор). Теперь, когда он использует составной идентификатор, он вызовет saveorupdate и обновит существующую строку, которая сделает все остальные поля пустыми, кроме поля, которое я обновил. Я хочу, чтобы это поле не изменилось, чтобы сохранить свое первоначальное значение во время этого обновления. –