Вы можете создавать свои JAXB-аннотированные объекты , которые также Java Persistence API (JPA) -аннотированные объекты.Используя JPA, вы можете сохранить эти объекты в вашей базе данных.Преимущество хранения аннотаций JAXB и JPA в одном классе заключается в том, что любые изменения в вашем объекте необходимо вносить только в этот класс, представление пользовательского интерфейса и связанный XSD
. Однако в некоторых случаях это возможно.сломать идеи, стоящие за архитектурой N уровня.Вы эффективно объединяете свою бизнес-логику с уровнем постоянства.Ради устранения дублирования это может быть хорошей идеей, но иногда вы обнаружите, что используете @Transient
и @XmlTransient
, чтобы помещать в класс вещи, необходимые только в XML или базе данных, без того, чтобы они влияли на области, в которых они отсутствуют.Это необходимо.
Так что это возможно, но вы хотите взвесить все за и против, прежде чем сделать это.См. Также этот вопрос и этот вопрос для получения дополнительной информации о компромиссах (все склоняются в сторону от размещения обоих наборов аннотаций в одном месте).
Этот вопрос охватывает некоторые инструменты для минимизации усилий по переносу данных между XML и хранилищем данных через JAXB.