Имеется ли в вашей заявке документы или заказы и скидки. Например, у вас есть какая-то страница, используемая для поиска и отображения документов, независимо от их типа? Или у вас есть какой-то другой объект, который имеет связь (ToOne или ToMany) с документом (а не с заказом или со скидкой)?
Если ответ на один из этих вопросов - «да», то Document
должен быть Entity
(что не означает, что он должен иметь свою собственную таблицу: Hibernate поддерживает три типа отображения наследования для сущностей).
Если, на самом деле, Discount
и Order
- это две несвязанные сущности, у которых просто есть общий набор атрибутов (номер, автор и дата создания), то документ должен быть просто MappedSuperclass
.