使用SDN 4.0并拥有此实体,提供一个兴趣树(父母和子女)
@NodeEntity
public class Interest {
@GraphId
private Long id;
private Interest parent;
private List<Interest> children = new ArrayList<Interest>();
private String label;
public Interest(){
}
public Interest(Interest parent, String label) {
super();
this.parent = parent;
this.label = label;
if (this.parent!=null && !this.parent.getChildren().contains(this))
getChildren().add(this);
}
public List<Interest> getChildren() {
return children;
}
public void setChildren(List<Interest> children) {
this.children = children;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Interest getParent() {
return parent;
}
public void setParent(Interest parent) {
this.parent = parent;
}
....
}
和存储库
public interface InterestRptry extends GraphRepository<Interest>{
public Page<Interest> findAllByParentIsNull(Pageable pageRequest);//
public List<Interest> findAllByParentIsNull();//
}
两种语法都没有返回任何元素,问题是什么?
这可能是因为父母被视为一个关系芯片,而不是一个属性
此查询执行作业
MATCH (i:`Interest`) WHERE not(i-[:PARENT]->()) return i
答案 0 :(得分:1)
SDN 4尚不支持派生查找器上的分页。 还没有支持isNull。
解决方法是使用自定义查询。