У меня есть модель предметной области, которая в настоящее время в значительной степени зависит от наследования, и из-за нескольких проблем, связанных с прокси-моделью Hibernate, я реорганизую модель для использования композиции вместо нее. Основной проблемой, с которой я столкнулся, является следующая ситуация:
- Получить запись X в качестве родителя
- Hibernate возвращает прокси для Родителя
instance of
и уныние теперь сломано
Кроме того, такие вещи, как ссылки внешнего ключа на родительскую таблицу, не будут работать с таблицей для конкретной стратегии подкласса. Так что теперь я в основном делаю Parent
конкретным классом и помещаю ссылку на Child1
и Child2
в родительский класс (требуется соединение для извлечения данных по мере необходимости).
На основании этого описания кто-нибудь шел по подобному пути и сталкивался с какими-либо проблемами, или этот подход имеет смысл? Есть ли лучший подход, о котором я не думал?