JPA之JPQL(一)

JPA之JPQL(一)

JPQL语言的语句可以是select语句、update语句或delete语句
他们都是通过Query接口封装执行的

Query接口封装了执行数据库查询的相关方法。调用createQuerycreateNamedQuerycreateNativeQuery方法可以获得查询对象,进而可调用Query接口的相关方法来执行查询操作。

Query接口的主要方法:

int executeUpdate() 用于执行update或update语句。
List getResult() 用于执行只返回单个结果的实体集实体列表。
Object getStringRuselt() 用于执行只返回单个结果的实体的的select语句。
Query setFirstResult(int starPosition) 用于设置从哪个实体记录开始返回查询结果。
Query setMaxResult(int maxResult) 用于设置放回结果的最大数。与setFirstResult结合可实现分页查询。
Query setFlushMode(FlushModeType
flushMode)
设置查询对象的Flush模式。参数可以去2个枚举值:FlushMoseType.AUTO为自动更新数据库记录,FlushMode Type.COMMIT 为指导提交事务是才更新数据库记录。

createQuery

1. 查询对象

在这里插入图片描述

注意
在jpql中,如果是查询结果是对象,那么from关键字后面跟类名,如果查询结果是一个字段,那么要使用表名

2. 查询部分属性:

在这里插入图片描述

默认情况下,如果只查询部分属性,则返回Object[ ] 类型的结果,或者Object[] 类型的List

如果希望返回的是对象,可以在实体类中创建对应的构造器
在JPQL语句中,利用构造器返回实体类的对象

createNamedQuery

在这里插入图片描述
适用于实体类前适用@NamedQuery标记的查询语句
在这里插入图片描述

createNativeQuery

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Xxacker/article/details/84896988
今日推荐