我有一个使用hibernate 4.3.11的大型系统(A)。我们希望使用hibernate-envers对几个表进行审计。
但是,我们希望在使用hibernate 5的不同系统(B)上使用审计日志。
考虑到system只从共享数据库读取,在这种情况下可以混合hibernate版本吗?
发布于 2017-10-17 16:32:33
考虑到在4.3.x和5.x发布流之间引入的更改,很可能您可以以最小的努力完成所要求的任务。
但是,我确实需要让您意识到,5.x发行版流中的一些be可能需要一些可能不兼容的小模式更改,所以一定要进行测试,因为可能存在一些基于映射的情况,您可能无法这样做。
我理解为什么您的团队会选择这条路径,但我想敦促您考虑其他方法,如果可能的话,避免共享数据库。
最终,您可能会达到这样的地步:两个Hibernate/Envers版本不兼容,或者遗留特性切换不再存在,如果没有重大的基础结构更改,您将被锁定在使用旧版本,没有明确的升级路径。
使用某种类型的事件源、触发器、数据复制、消息队列等来保持两个异构系统的同步,可以在这个空间中继续前进,允许最大程度的灵活性,最少的耦合量,我认为最少的技术债务。
https://stackoverflow.com/questions/46786094
复制相似问题