Определить генератор последовательности в базовом классе объектов JPA? - PullRequest
3 голосов
/ 29 ноября 2011

возможно ли наследовать генератор последовательности базового класса в сущности jpa2.0? Цель этого состоит в том, чтобы иметь свойство id всех сущностей в общем базовом классе, и каждая сущность просто должна определить имя своей собственной последовательности.

Это то, что я хочу: Базовый класс:

public abstract class BaseClass {

   @Id
   @GeneratedValue( strategy = GenerationType.AUTO, generator = "mySeqGenerator")
   Long id;
}

и реализация

@Entity
@SequenceGenerator( name = "mySeqGenerator", sequenceName = "the_seq" )
public class MyEntity extends BaseClass {
   [..]
}

Я использую hibernate и отзывает это по "HHH000138: Смешивание стратегии наследования в иерархии объектов не допускается, игнорируя подстратегию в MyEntity"

1 Ответ

0 голосов
/ 29 ноября 2011

Все генераторы глобальны для единицы сохраняемости независимо от того, как они были определены (в аннотациях на уровне класса, на уровне поля или в orm.xml).

Следовательно, вам не нужно ничего «наследовать» или «делиться» - вы можете просто использовать это.

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