我确信Spring Data
和Spring Data JPA
指的是相同的,但后来我在youtube上看了一个关于Spring Data的教程,他在那个教程中使用的是JdbcTemplate
,所以我在那里感到困惑。
我想澄清一下Spring Data
和JdbcTemplate
之间的区别是什么?JdbcTemplate
和Spring Data JPA
是Spring Data
的一部分吗?
我确信Spring Data
和Spring Data JPA
指的是相同的,但后来我在youtube上看了一个关于Spring Data的教程,他在那个教程中使用的是JdbcTemplate
,所以我在那里感到困惑。
我想澄清一下Spring Data
和JdbcTemplate
之间的区别是什么?JdbcTemplate
和Spring Data JPA
是Spring Data
的一部分吗?
3条答案
按热度按时间xnifntxz1#
JdbcTemplate
是Spring Framework本身的一部分。Spring Data是由多个子项目组成的项目,其中Spring Data JPA是其中一个子项目。Spring Data和子项目构建在Spring框架之上。
deyfvvtc2#
如果不想通过域模型访问数据库模式,可以使用Spring
JdbcTemplate
,使用JPA时,需要确保数据库模式正确Map到域模型。spring
JdbcTemplate
和JPA的性能几乎相似。JPA是Java持久性API,它是Java用于对象关系Map的标准API。
Spring框架由一组项目组成,其中一个项目是Spring Data。
Spring Data的目标是让不同类型的数据库(从传统的关系数据库到NoSQL数据库)更容易地工作,Spring Data通过Spring Data JPA子项目支持JPA。
j7dteeu83#
以下是我的一位经验丰富的同事的建议:
为了确定使用哪种技术,他更喜欢这样的顺序:
1.使用标准的JPA方法来实现直接的解决方案-使用Mappings,您可以无缝地进行连接,加速开发过程,并且错误处理是直接的。
1.如果您希望消除JPA开销,请使用JPA本机查询。
1.将JPA结果集Map用于复杂连接查询和自定义对象Map.....
1.如果性能是唯一目标,则使用JDBC模板-开销:开发过程很慢,因为您必须编写自己的代码和错误处理机制。
更新日期:
1.如果公司正在切换到不同的数据库,使用略有不同的SQL语法。使用JDBC模板将增加大量的工作,调整SQL到新的数据库,因为它只适用于以前的数据库。
然而,如果用户使用JPA,他们在切换数据库时不必接触查询,节省了大量的工作。