当前位置: 首页 > 工具软件 > Criteria4JPA > 使用案例 >

jpa使用条件API(Criteria API)进行查询

文国发
2023-12-01

1.简介

 

JPA2.0引入了一个全新的构建查询的条件API,它标准化了存在于专用持久化产品中的许多编程功能

不仅仅是从JPQL到编程接口的字面量转换,而且它还采用了专用模型的编程最佳实践,如方法链(method chaining)

下面是一个简单的示例:

CriteriaBuilder builder = this.manager.getCriteriaBuilder();
CriteriaQuery<User> query = builder.createQuery(User.class);
Root<User> root = query.from(User.class);
query.select(root).where(builder.equal(root.get("name"),"zhangsan"));
this.manager.createQuery(query).getResultList();

一次条件查询使用了以下成员组件:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.FROM子句

AbstractQuery<T>提供from方法来定义抽象架构类型,,它将形成查询的基础。该方法接受一个实体类型作为参数,并把一个新的根添加到查询中。

  • from可以多次调用,每次调用都会添加一个查询根到from子句中
  • 如果添加的查询根之间没有条件关联,则会采用交叉连接,即发生笛卡尔积
  • 就算没有返回添加的查询根
 类似资料: