繁体   English   中英

Spring JPA有收集计数

[英]Spring JPA with collection count

我目前正在开发一个项目,我给了一个实体Customer ,它有一个Order实体的集合,因此CustomerOrder之间有一个OneToMany关系。 假设我想选择具有相应数量的Order实体的Customer集合的子集(在SQL中称为COUNT ):是否已存在Spring Data JPA提供的查询方法的默认实现,以避免编写自定义查询使用JPQL在一个SQL查询中取代客户的订单数量而不是n + 1个查询,其中n是客户数量? 或者某种类型的注释可以在Customer的某些瞬态字段中添加,例如long orderCount

如果正确命名存储库接口方法,Spring Data JPA将自动创建适当的COUNT SQL。 例如,下面的两个存储库方法将按客户ID或客户姓氏计算订单数

public interface OrderRepository extends CrudRepository<Order,Long> {
  Long countByCustomerId(Long id);
  Long countByCustomerLastName(String lastName);
}

请仔细阅读以下链接中的代码以获取完整的上下文

https://github.com/juttayaya/stackoverflow/tree/master/CustomerOrder

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM