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

前端之家收集整理的这篇文章主要介绍了java – Spring Data Repositories – 查找列表中的where字段前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用 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);

}

猜你在找的Java相关文章