0

neo4j-ogm を使用して、次のコードを作成しました。

@Configuration
@EnableNeo4jRepositories(basePackages="com.neo4j.demo.repositories")
@EnableTransactionManagement
@ComponentScan("com.neo4j.demo")
public class Neo4jApplication extends Neo4jConfiguration{
  @Bean
  public SessionFactory getSessionFactory(){
     return new SessionFactory("com.neo4j.demo.domain");
  }
  @Bean 
  public Neo4jServer neo4jServer(){
     return new        RemoteServer("http://username:password@localhost:7474","neo4j","neo4jhello");  
  }
  @Bean 
  @Scope(value="session",proxyMode=ScopedProxyMode.TARGET_CLASS)
  public Session getSession() throw Exception{
     return super.getSession();
  }
}

ノードエンティティ:

@NodeEntity
public class Message {
  @GraphId
   Long nodeId;
  @Index(unique=true)
   String id;
   Person author;
  @Relationship(type="LISTENER")
  List<Person>  listeners;
  //getters and setters  
} 
@NodeEntity
public class Person{
  @GraphId
  Long nodeId;
  @Index(unique=true)
  String id;
  String name;
  //getters and setters
}

session.save を使用してメッセージの新しいインスタンスを保存すると、うまく機能します。関連するすべてのエンティティが保存されます。しかし、session.loadはうまく機能していないようです

List<Message> messages = session.loadAll(Message.class,N)

ここで、N は [-1,3] で、結果は同じです。作成者、リスナーなどのプロパティは null です。なんで?

4

0 に答える 0