Метод PostLoad не вызывается в классе Id - PullRequest
0 голосов
/ 31 августа 2010

У меня есть класс сущности, а другой класс - класс идентичности этой сущности. Я написал аннотацию @ javax.persistence.PostLoad в классе Id, чтобы поместить некоторое значение по умолчанию в один из столбцов.

Но я обнаружил, что его вообще не вызывают. Неужели классы идентификаторов не должны иметь эту аннотацию?

1 Ответ

3 голосов
/ 31 августа 2010

вы можете аннотировать метод в вас Entity class с помощью @PostLoad, чтобы установить значение по умолчанию ...

, если вы аннотируете свой ID-класс, то вам нужно представить его как CallbackСлушатель в вашем классе сущностей:

@EntityListeners({ID.class})
class MyEntity

, и я не думаю, что это хорошая идея, потому что экземпляр вашего слушателя не связан с экземпляром идентификатора в вашем классе сущностей.это два разных объекта класса ID.

@ PostLoad

Используется для указания методов обратного вызова для соответствующего события жизненного цикла.Эта аннотация может применяться к методам класса сущности, сопоставленного суперкласса или класса прослушивателя обратного вызова.

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