![]() JPA 面试问题16 Mar 2025 | 阅读 11 分钟 下面列出了最常问的 JPA 面试问题和答案 1) 什么是 Java 持久化 API?Java 持久化 API (JPA) 是 Java 的规范,用于在 Java 对象和关系数据库之间持久化数据。JPA 充当面向对象领域模型和关系数据库系统之间的桥梁。由于 JPA 只是一个规范,它本身不执行任何操作。它需要一个实现。因此,Hibernate、TopLink 和 iBatis 等 ORM 工具实现了 JPA 规范以进行数据持久化。Java 持久化 API 的第一个版本 JPA 1.0 于 2006 年发布,作为 EJB 3.0 规范的一部分。 2) JPA 执行访问、持久化和管理数据等实际任务吗?不,JPA 只是一个规范。Hibernate、iBatis 和 TopLink 等 ORM 工具实现了 JPA 规范并执行这些类型的任务。 3) 什么是对象关系映射?对象关系映射是一种通过将对象状态映射到数据库列来开发和维护对象与关系数据库之间关系的一种机制。它将编程代码的属性转换为表的列。它能够轻松处理各种数据库操作,例如插入、更新、删除等。 ![]() 4) JPA 有哪些优点?JPA 的优点如下。
5) 什么是可嵌入类?可嵌入类表示实体状态,但没有自己的持久标识。此类对象共享拥有它的实体类的标识。实体可以具有单值或多值可嵌入类属性。 6) 列出一些 ORM 框架。以下是基于 ORM 机制运行的各种框架:-
7) 什么是 JPQL?JPQL 是 JPA 规范中定义的 Java 持久化查询语言。它用于构造查询。 8) 持久化实体对象的步骤是什么?执行以下步骤以持久化实体对象。
9) 插入实体的步骤是什么?我们可以通过实体轻松地将数据插入数据库。EntityManager 提供了 persist() 方法来添加记录。以下步骤用于将记录插入数据库。
10) 查找实体的步骤是什么?为了查找实体,EntityManager 接口提供了 find() 方法,该方法通过主键搜索元素。以下步骤用于在记录中查找实体。
11) 更新实体的步骤是什么?JPA 允许我们通过更新实体来更改数据库中的记录。要执行以下步骤来更新实体。 StudentEntity.java Persistence.xml UpdateStudent.java
12) 删除实体的步骤是什么?要从数据库中删除记录,EntityManager 接口提供了 remove() 方法。remove() 方法使用主键删除特定记录。要执行以下示例以删除实体。 Persistence.xml Deletion.java
13) 使用 JPA 插入记录机制?14) 实体映射的不同方向是什么?映射的方向可以是单向的或双向的。在单向映射中,只有一个实体可以映射到另一个实体,而在双向映射中,每个实体都可以映射或引用另一个实体。 15) 实体映射的不同类型是什么?以下是对象关系映射的类型:-
16) 映射中的孤儿删除是什么?如果一对一或一对多映射中的目标实体从映射中删除,则删除操作可以级联到目标实体。此类目标实体被称为孤儿,并且可以使用 orphanRemoval 属性来指定应删除孤儿实体。 17) 解释对象的持久化生命周期?在持久化生命周期中,对象处于以下状态:-
18) 标识符生成的不同类型是什么?以下是 @GeneratedValue 注解所需的 ID 生成策略类型:-
19) 什么是实体?实体是一组状态在单个单元中关联在一起。实体行为类似于对象,并成为面向对象范式的主要组成部分。换句话说,我们可以说实体是 Java Persistence Library 中应用程序定义的对象。每个实体都与元数据关联,元数据以 XML 或注解的形式表示其信息。 20) 实体的属性是什么?实体必须具有以下属性:-
21) Entity Manager 在 JPA 中的作用是什么?实体管理器负责以下操作。
22) 实体类有哪些约束?实体类必须满足以下要求
23) Java 集合在 JPA 中的作用是什么?在 JPA 中,Java 集合用于持久化包装类和 String 的对象。 24) 哪种类型的对象可以存储在 JPA 集合映射中?以下是 JPA 允许存储的对象类型:-
25) JPA 中可以使用哪种类型的集合?为了存储多值实体关联和对象集合,使用以下类型的 Java 集合:-
26) JPA 中级联操作的目的是什么?如果我们将任何任务应用于一个实体,那么使用级联操作,我们也可以将其应用于其相关实体。 27) JPA 支持哪些类型的级联?以下是级联类型的列表:-
28) 什么是 JPQL?Java 持久化查询语言 (JPQL) 是 JPA 规范的一部分,它定义了针对持久化实体的搜索。它是一种面向对象的查询语言,用于对持久化实体执行数据库操作。JPQL 不使用数据库表,而是使用实体对象模型来操作 SQL 查询。在这里,JPA 的作用是将 JPQL 转换为 SQL。因此,它为开发人员处理 SQL 任务提供了一个简单的平台。JPQL 是 Entity JavaBeans 查询语言 (EJBQL) 的扩展。
29) JPQL 有哪些功能?JPQL 的一些基本功能是:-
30) 什么是 Criteria API?Criteria API 是一个规范,它提供了使用 Java 编程语言 API 编写的类型安全且可移植的 Criteria 查询。它是构造实体及其持久化状态查询的最常用方法之一。它只是定义 JPA 查询的另一种方法。Criteria API 定义了一个独立于平台的 Criteria 查询,用 Java 编程语言编写。它是在 JPA 2.0 中引入的。其主要目的是提供一种类型安全的方式来表达查询。 |
我们请求您订阅我们的新闻通讯以获取最新更新。