Hello there!
i have to connect a 3rd party db-system (Microsoft Navision) for read-only. There are several different object (table)-versions, so i need to handle different versions of the tables.
i thougth about some solutions, here is what i got:
1: No entities, just business-Objects and a version-depending Facade to execute native SQL. pro: most compatible contra: own mapping -> huge effort
2: business- & entity-pack for each version (also different persistence units) pro: reliable business-logics contra: do all x times seperately (business & enitities for each version), interfaces for all beans
3: unified version of entities with all non-common attributes as "transient", reload these attributes according to table-version afterwards (native SQL) pro: compatible entity with all db-versions contra: hibernate cannot search with transient attributes, performance-issue on collections
you have any suggestions how to realize a versioning to support different 3rd-party db-versions (or better table-versions)?
|