SDN4 - 无法使用id列表查找BYId

时间:2016-12-07 10:07:12

标签: java spring spring-data-neo4j-4

在旧版SDN3中,我可以使用findById(List id),但升级到SDN4后,我再也无法使用此功能,总是返回空。

这是我的示例课程:

@NodeEntity
public class Right{

    @GraphId
    Long graphId;

    String id; //random generated UUID

    String name;

    //Properties & Constructor
}

然后我有RightRepository包含这些代码:

public interface RightRepository extends GraphRepository<Right> {
    List<Right> findById(List<String> id);
}

我不需要使用Loop来获取每个ID,而只需要调用一次存储库,然后获取List(不使用findAll())

SDN4已经不支持吗?还有其他解决方案吗?

1 个答案:

答案 0 :(得分:1)

当我在评论中发帖并经过进一步调查后,我认为自定义查询是目前完成您的要求的唯一方法。这有效:

@Query("MATCH (n:Right) WHERE n.id IN {rightIds} RETURN n") 
List<Right> findRightById(@Param("rightIds") List<String> rightIds);

希望有所帮助