Hello. The company I recently joined has a very large Java "legacy" flagship web application that was first created about 8 years ago and has been added to piecemeal ever since. To put it mildly we are very much buried under a pile of technical debt. Recently we have had discussions about a new technology stack for when we redesign this app. For the persistence layer some of us were leaning toward JPA with Hibernate. Others wanted IBatis. With a redesign we would still be required to use some of the legacy db tables for some time to come. I have heard that IBatis might be better when using a legacy db structure and JPA being better when there is a new db design. Is there any truth to this? What would be better if we have a mix of legacy and new tables?