Я просто искал динамическое сопоставление с eclipselink, я не могу найти решение для своего случая, теперь в моей системе у сущности есть 3 версии, одна рабочая/черновая (т.е. W100), другая производственная (т.е. M100), а остальные одна из них — историческая версия (H100), в любое время мы можем получить доступ как к рабочей, производственной, так и к исторической версии. то есть
Account account = // query from working.
account.setStatus("APPROVED");
account.increaseVersionNo();
myJPAEngine.updateApproved(account); // this step update status to both working and production
//, and W100.PRODUCTION_IPKEY = M100.IPKEY
// (if production version does't exist
//, create a new one with same columns as working version).
//, if increaseVersionNo() called, then we need copy old 'M'- production record to 'H' history version table.
//, my JPA engine need access both 'W'/'M'/'H' tables at same time by passing a parameter to JPA API metadata classes by ThreadLocal or other related workaround.
Поддерживает ли это eclipselink (или Hibernate)? мое динамическое сопоставление принимает параметр, чтобы решить, какая таблица используется, то есть это интерактивное динамическое сопоставление. Можем ли мы и как добавить некоторые настройки в классы метаданных eclipselink?
Спасибо.