Я сталкиваюсь с проблемой использования hibernate для сопоставления версионной сущности с одним свойством.
У меня есть таблица a:
id(long)
referenceIdentifier(uuid)
isLatestversion(boolean)
и таблица b:
id(long)
someArbitraryAttachedInfo(String)
referenceToTableA(uuid)
Таблица a будет иметь несколько версий одного и того же объекта, различные идентификаторы, но referenceIdentifier остается неизменным.Существует только один объект a с флагом isLatestversion, установленным в true для любого заданного referenceIdentifier (мы определим последнюю версию из журнала ревизий).Мы хотим, чтобы в таблице b был uuid, поэтому мы можем установить его один раз, и нам не придется отслеживать и обновлять его при появлении более новой версии a и видеть все соответствующие вложения при просмотре более старой версии.
Как я могумодель это в спящем режиме?Когда я использую @ManyToOne с @JoinColumn и @Where, он генерирует ограничение уникальности для uuid таблицы a.Когда я использую @JoinFormula, он генерирует поле bytea вместо типа ссылочного столбца.
Спасибо за любую помощь или указатели, которые вы можете предоставить.