【发布时间】:2013-08-26 02:52:53
【问题描述】:
我正在使用 Spring-data 通过 REST 访问 Neo4j 数据库。
我的一个实体看起来类似于以下实体:
@NodeEntity
@TypeAlias("org.example.Foo")
public class Foo {
@GraphId
private Long nodeId;
//...
@RelatedTo(type="HAS_BAR", direction=Direction.OUTGOING)
private Set<Bar> bars;
//...
}
一个典型的Foo 可能有0-1000 Bars。大多数时候,加载Foo 时不需要那些Bars,所以我认为我应该通过不添加@Fetch 注释来避免急切加载Bars。
但是,当现在使用生成的存储库方法加载 Foo 时,Bars 已加载 - 至少部分加载(仅它们的 nodeId 属性)。
有什么办法可以避免这种情况吗?这种行为对性能的影响很大。
我真的希望能够对集合本身使用 https://stackoverflow.com/a/16159051/232175 中所示的延迟加载。
【问题讨论】:
标签: java rest neo4j lazy-loading spring-data-neo4j