【JDBC与JPA】JDBC与JPA
一、简介:
1. JDBC:
英文全称:Java DataBase Connectivity
JDBC API是一个Java API,可以访问任何类型表列数据,特别是存储在关系数据库中的数据。JDBC代表Java数据库连接。
JDBC库中所包含的API通常与数据库使用于:
- 连接到数据库
- 创建SQL或MySQL语句
- 在数据库中执行SQL或MySQL查询
- 查看和修改数据库中的数据记录
JDBC API支持用于数据库访问的两层和三层处理模型,但通常,JDBC体系结构由两层组成:
- JDBC API:提供应用程序到JDBC管理器连接。
- JDBC驱动程序API:支持JDBC管理器到驱动程序连接。
JDBC API使用驱动程序管理器并指定数据库的驱动程序来提供与异构数据库的透明连接。
JDBC驱动程序管理器确保使用正确的驱动程序来访问每个数据源。 驱动程序管理器能够支持连接到多个异构数据库的多个并发驱动程序。
JDBC API提供以下接口和类 -
-
DriverManager
:此类管理数据库驱动程序列表。 使用通信子协议将来自java应用程序的连接请求与适当的数据库驱动程序进行匹配。在JDBC下识别某个子协议的第一个驱动程序将用于建立数据库连接。 -
Driver
:此接口处理与数据库服务器的通信。我们很少会直接与Driver
对象进行交互。 但会使用DriverManager
对象来管理这种类型的对象。 它还提取与使用Driver
对象相关的信息。 -
Connection
:此接口具有用于联系数据库的所有方法。 连接(Connection
)对象表示通信上下文,即,与数据库的所有通信仅通过连接对象。 -
Statement
:使用从此接口创建的对象将SQL语句提交到数据库。 除了执行存储过程之外,一些派生接口还接受参数。 -
ResultSet
:在使用Statement
对象执行SQL查询后,这些对象保存从数据库检索的数据。 它作为一个迭代器并可移动ResultSet
对象查询的数据。 -
SQLException
:此类处理数据库应用程序中发生的任何错误。
2. JPA:
英文全称:Java Persistence API
下表描述了每个在上述架构的显示单元。
单元 | 描述 |
---|---|
EntityManagerFactory | 这是一个EntityManager的工厂类。它创建并管理多个EntityManager实例。 |
EntityManager | 这是一个接口,它管理的持久化操作的对象。它的工作原理类似工厂的查询实例。 |
Entity | 实体是持久性对象是存储在数据库中的记录。 |
EntityTransaction | 它与EntityManager是一对一的关系。对于每一个EntityManager,操作是由EntityTransaction类维护。 |
Persistence | 这个类包含静态方法来获取EntityManagerFactory实例。 |
Query | 该接口由每个JPA供应商,能够获得符合标准的关系对象。 |