Преобразование Hibernate Entity для очистки POJO для сериализации - PullRequest
1 голос
/ 29 октября 2011

Я все еще новичок в использовании ORM в Java, и вот один вопрос, на котором я застрял:

У меня большое количество Hibernate Entities, и я хочу запросить их на сервере (работает нормально), затем сериализовать их (используя ObjectOuputStream) и отправить их клиенту.

Если я десериализую их на клиенте, все равно будет большое количество зависимостей Hibernate / javax.persistence.

Можно ли как-то преобразовать мои сущности в POJO без какой-либо зависимости от спящего режима?

Спасибо!

EDIT: Чтобы прояснить ситуацию, я использую аннотации, что, вероятно, глупо. Мне нужно будет переопределить все классы, чтобы они не содержали аннотаций, тогда они должны быть стандартными POJO.

1 Ответ

2 голосов
/ 29 октября 2011

Да, вам просто нужно вернуться к конфигурации XML, а не к удобным аннотациям. Hibernate имеет свои hbm файлы с самого начала, с JPA вы используете orm.xml.

Каждый может быть выражен с помощью XML, аннотации являются только синтаксическим сахаром. Таким образом, ваши сущности будут полностью свободны от ссылок Hibernate / javax.persistence.

См. Также: JPA: Должен ли я очистить свои классы сущностей с помощью orm.xml?

P.S .: Имейте в виду, что сериализация модели вашего домена (JPA / Hibernate-сущности) вскоре станет проблемой, как только вы начнете рефакторинг своей модели домена. Даже когда вы контролируете обе стороны. Действительно, действительно подумайте о DTO.

...