Вопрос

Я знаю, что вы можете автоматически увеличить идентификатор, сопоставившись;

<id column="user_id" name="id" >
<generator class="increment"/>
</id>

Но возможно ли также увеличить свойство, что я пробовал до сих пор, не работал;

<property column="numeric_value" name="nr" >
<generator class="increment"/>
</property>
Это было полезно?

Решение

Но возможно ли также увеличить свойство, что я пробовал до сих пор, не работал;

Нет, вы не можете использовать <generator> внутри А. <property> (или, чтобы написать это на простом английском языке, гибернация поддерживает только с помощью генератора для свойств идентификатора).

Может быть, посмотрите на сгенерировано характеристики Если вы можете полагаться на базу данных, чтобы генерировать значение (например, с помощью триггера).

Рекомендации

Другие советы

Это будет зависеть от базы данных и как вы создали таблицу. Например, если вы используете MySQL, то в поле ID таблицы должно быть установлено автоматическое увеличение набора для поля. Hibernate не будет генерировать его, а скорее зависит от базы данных, чтобы сделать это. Если вы используете Hibernate Tools для генерации таблиц, это было бы позаботиться о генерации таблиц соответствующим образом. Вы можете обратиться к http://docs.jboss.org/hibernate/Core/3.3./reference/en/html/mapping.html#mapping-declaration-id.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top