JDBC和JPA的区别

1.JDBC提供一种接口,它是由各种数据库厂商提供类和接口组成的数据库驱动,为多种数据库提供统一访问。我们使用数据库时只需要调用JDBC接口就行了。

JDBC的用途:与数据库建立连接、发送 操作数据库的语句并处理结果。

常见数据库:Oracle、MySQL等。

2.JPA是Java持久层API。它是对java应用程序访问ORM(对象关系映射)框架的规范。为了我们能用相同的方法使用各种ORM框架。

JPA用途:简化现有Java EE和Java SE应用开发工作;整合ORM技术。

使用JPA只需要创建实体(这和创建一个POJO(Plain Ordinary Java Object)简单的Java对象一样简单),用@entity进行注解。在Spring Data JPA中,定义一个简单的接口,用于把对象持久化到数据库的仓库。

常见ORM框架:Hibernate、MyBatis等。

3.不同点:

1.使用的sql语言不同:

JDBC使用的是基于关系型数据库的标准SQL语言;

JPA通过面向对象而非面向数据库的查询语言查询数据,避免程序的SQL语句紧密耦合。

2.操作的对象不同:

JDBC操作的是数据,将数据通过SQL语句直接传送到数据库中执行:

JPA操作的是持久化对象,由底层持久化对象的数据更新到数据库中。

3.数据状态不同:

JDBC操作的数据是“瞬时”的,变量的值无法与数据库中的值保持一致;

JPA操作的数据时可持久的,即持久化对象的数据属性的值是可以跟数据库中的值保持一致的。

猜你喜欢

转载自blog.csdn.net/SteveForever/article/details/81193372