我们的客户强迫我们使用JdbcTemplate而不是Spring Data Jpa来开发Spring项目。但是,该应用程序在响应速度和传递方面并不关键(它是客户端最终用户的内部Web应用程序)。我们希望使用Spring Data Jpa。
问题:使用JdbcTemplate是否有一些客观原因,因为应用程序的速度很高?从我的角度来看,会有不同的瓶颈。
答案 0 :(得分:6)
问题是,没有指定确切的用例就不可能回答更快的问题。
JdbcTemplate
可能在谈论纯查询执行时会更快,因为JPA实现会做更多的事情:
虽然模板(几乎)只是:
ResultSetMapper
或类似电话的调用。当然,JPA这样做是有原因的。
而这些东西的成本超出了性能。
JPA提供的抽象实际上是非常复杂和泄漏的,大多数使用它的开发人员都无法正确理解。尽管我认为在许多情况下使用JPA是完全合理的,但我也可以与禁止将其用于项目的人们联系起来。为了对此做出明智的决定,谈论性能绝对太有限了。