加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – Spring Data Repositories – 查找列表中的where字段

发布时间:2020-12-14 05:50:16 所属栏目:Java 来源:网络整理
导读:我正在尝试使用 spring PagingAndSortingRepository和find MyEntity,其中fieldValues中的字段查询如下: @Repositorypublic interface MyEntity extends PagingAndSortingRepositoryMyEntity,String { ListMyEntity findByMyField(SetString myField);} 但没
我正在尝试使用 spring PagingAndSortingRepository和find MyEntity,其中fieldValues中的字段查询如下:
@Repository
public interface MyEntity extends PagingAndSortingRepository<MyEntity,String> {

    List<MyEntity> findByMyField(Set<String> myField);

}

但没有成功.

我希望上面的函数返回其字段与其中一个字段值匹配的所有实体,但它只返回空结果.

即使它看起来像一个非常直接的能力,我在docs中找不到它的任何参考.

是/如何实现?

谢谢.

解决方法

如果您正在搜索实体中的特定字段并且想要返回所有该字段的列表,并且某个集合中至少有一个条目匹配,那么这确实是可能的.文档 here说这可以使用关键字在例如:findByAgeIn(Collection< Age> ages)中实现,并且相当于…其中x.age in?1

从你的帖子我不是100%确定这是你正在使用的用例,但尝试一下.您需要搜索特定字段,因此将“字段”替换为您要搜索的字段.如果要搜索多个字段,则可以将结果与Or关键字连接,并以这种方式指定多个字段.

@Repository
public interface MyEntity extends PagingAndSortingRepository<MyEntity,String> {

    List<MyEntity> findByFieldIn(Set<String> myField);

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读