根据经验,我知道在Hibernate中有太多的命名查询hbm XML会导致它启动得更慢,因为它必须预先编译它们。
问题:
如果我将持久层移动到Spring Data JPA Repository并使用JpaRespository,我会遇到同样的事情吗?JpaRespository有很多我可能不需要的API吗?
Spring Data JPA何时在其后面生成SQL存储库?在启动时就像Hibernate命名查询一样?
答案 0 :(得分:1)
第一次执行时,会在运行时创建查询。 PartTreeJpaQuery创建关联的CriteriaQuery
并对其进行缓存以供日后重用。
您的应用程序开始变慢,因为Spring ApplicationContext
在启动时没有预先生成查询。