JPA JPQL简介
JPQL(Java持久性查询语言)是一种面向对象的查询语言,用于对持久实体执行数据库操作。 JPQL不使用数据库表,而是使用实体对象模型来操作SQL查询。 这里,JPA的作用是将JPQL转换为SQL。因此,它为开发人员提供了一个处理SQL任务的简单方式。
JPQL是实体JavaBeans查询语言(EJBQL)的扩展,向其添加了以下重要功能 -
- 它可以执行连接操作。
- 它可以批量更新和删除数据。
- 它可以使用排序和分组子句执行聚合函数。
- 单值和多值结果类型。
JPQL功能特性
- 它是一种独立于平台的查询语言。
- 它简单而强大。
- 它可以用于任何类型的数据库,如:MySQL,Oracle。
- JPQL查询可以静态地声明为元数据,也可以动态构建在代码中。
在JPQL中创建查询
JPQL提供了两种可用于访问数据库记录的方法。 这些方法是 -
-Query createQuery(String name)
- EntityManager接口的createQuery()
方法用于创建一个用于执行JPQL语句的Query接口实例。
Query query = em.createQuery("Select s.s_name from StudentEntity s");
此方法创建可在业务逻辑中定义的动态查询。
Query createNamedQuery(String name)
- EntityManager接口的createNamedQuery()
方法用于创建用于执行命名查询的Query接口实例。@NamedQuery(name = "find name" , query = "Select s from StudentEntity s")
此方法用于创建可以在实体类中定义的静态查询。
现在,可以通过以下Query接口方法来控制查询的执行 -
int executeUpdate()
- 此方法执行更新和删除操作。int getFirstResult()
- 此方法返回查询对象设置为检索的第一个定位结果。int getMaxResults()
- 此方法返回查询对象设置为检索的最大结果数。java.util.List getResultList()
- 此方法返回结果列表作为非类型化列表。Query setFirstResult(int startPosition)
- 此方法分配要检索的第一个结果的位置。Query setMaxResults(int maxResult)
- 此方法分配要检索的最大结果数。
上一篇:JPA级联删除
下一篇:JPA JPQL基本操作
- Java教程
- Vim教程
- Swing教程
- Spring教程
- Spring Web Services教程
- Spring MVC教程
- Spring JDBC教程
- Spring Cloud教程
- Spring Boot教程
- Spring Boot CLI教程
- Spring Batch教程
- Spring AOP教程
- PDFBox教程
- JSP教程
- JSF教程
- JPA教程
- Java面向对象设计
- Java设计模式
- Java虚拟机教程
- Java泛型教程
- Java正则表达式教程
- Java数据类型教程
- Java并发编程教程
- Java密码学教程
- Java多线程教程
- Java国际化(i18n)教程
- JavaFX教程
- Java9教程
扫描二维码
程序员编程王