Зачем нужен дополнительный SQL-запрос после успешного обновления, когда номер версии контролируется db в Hibernate? - PullRequest
0 голосов
/ 20 марта 2019

Я читал эту статью и не мог понять, почему, когда мы делегируем управление данными управления версиями базе данных в Hibernate, после успешного обновления требуется еще один SQL-запрос для получения номера версии обратноиз базы данных.

Вот пример.У нас есть объект с именем Product.

Это конфигурация сопоставления:

<hibernate-mapping package=”example”>
<class name=”Product”>
<id name=”id”>
  <generator class=”native” />
</id>
<version name=”version” type=”long” generated=”always”/>
<property name=”name” not-null=”true” />
</class>
</hibernate-mapping>

Это запросы, сгенерированные после обновления продукта:

Hibernate:
/* update example.Product */ 
update Product
set
 name=?
where
 id=?
 and version=?

Hibernate:
/* get generated state example.Product */ 
select product_.version as version8_
from
 Product product_
where
 product_.id=?

Я знаю, почемунеобходим контроль версий, но я не понимаю, почему почему номер версии получается после обновления продукта ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...