Hibernate naturalID - PullRequest
       7

Hibernate naturalID

3 голосов
/ 01 апреля 2010

Hibernate, похоже, не генерирует пустое ограничение для поля, помеченного как naturalID. Это нормально?

@MappedSuperclass
public class AbstractDomainObject extends PersistentObject {

 @NaturalId
 private String code;

Схема БД: CONSTRAINT SYS_CT_47 UNIQUE (CODE) Здесь нет ненулевого ограничения.

1 Ответ

3 голосов
/ 14 марта 2011

Извлеките следующую выдержку из справочного руководства Hibernate:

Естественный ключ - это свойство или комбинация свойств, которые уникальны и не равны нулю.Это также неизменно.Сопоставьте свойства естественного ключа как @NaturalId или отобразите их внутриэлемент.Hibernate сгенерирует необходимый уникальный ключ и ограничения обнуляемости, и в результате ваше отображение станет более самодокументируемым.

Обратите также внимание, что по умолчанию свойства естественного идентификатора предполагаются неизменяемыми (постоянными) Вы можете изменить значение по умолчанию, указав @NaturalId (mutable = true)

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