首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Spring类中在findByCategory产品模式中执行"findByCategory“?

如何在Spring类中在findByCategory产品模式中执行"findByCategory“?
EN

Stack Overflow用户
提问于 2017-11-06 12:49:46
回答 1查看 1.7K关注 0票数 0

我是Java框架的新手,我知道这个标题听起来过于具体,但是这个问题的答案对于任何类似的多到多模式都是有用的。我找了很多这个答案,却没有找到。请:在否决投票前阅读全部内容或与其他问题相关。

我有实体ProductCategory,它们是many-to-many相关的,在run-time生成的。

在我的REST应用程序中,我有三个使用该模式的重要end-points

  1. /category将所有类别作为菜单列出;
  2. /products?description=列出按描述字段中的术语筛选的产品;
  3. /category/{id}/products列出此类别中的产品。

对于最后一个问题,我有困难,因为有人告诉我,我应该使用@Query注释来创建一个join和一个where来完成工作。但是我相信Spring工程师不能把这种共同的任务排除在JPA之外。

第二个端点在它的存储库中有这个方法:

代码语言:javascript
复制
public Page<Produto> findByDescriptionIgnoreCaseContainingOrderByDescriptionAsc(String description, Pageable pageOptions);

最后一点我被告知应该是:

代码语言:javascript
复制
@Query("select * from products p left join p.category c where c = ?1")
public List<Produto> findByOrderByDescriptionAsc(Lond idCategory)

I是否可以以listByCategory(a way to get only one category) 的形式执行此搜索,而无需使用@Query注释?如果是,怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-06 13:34:15

如果你想得到所有的产品,但是categoryId

代码语言:javascript
复制
List<Product> findByCategoriesIdOrderByDescriptionAsc(long categoryId)

或者如果你只想得到一张唱片

代码语言:javascript
复制
Product findFirstByCategoriesIdOrderByDescriptionAsc(long categoryId)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47137433

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档