2015-11-28 6 views
1

У меня есть следующий Neo4j SDN объект:Neo4j SDN подставить данные лица

@NodeEntity 
public class Comment { 

    private final static String COMMENTED_ON = "COMMENTED_ON"; 
    private final static String CREATED_BY = "CREATED_BY"; 

    @RelatedTo(type = COMMENTED_ON, direction = Direction.OUTGOING) 
    private Commentable commentable; 

    private String text; 

    @RelatedTo(type = CREATED_BY, direction = Direction.OUTGOING) 
    private User author; 

} 

и следующий SDN метод хранилища:

@Override 
@Query("MATCH (c:Comment) WHERE id(c) = {commentId} RETURN c") 
Comment findOne(@Param("commentId") Long commentId); 

В результате этого вызова метода у меня Comment объект с author.id только ,

Как изменить этот метод (или запрос Cypher), чтобы предварительно заполнить author.name?

ответ

1

вы либо аннотировать поле автора с @Fetch (который получает полный автор охотно.

Или вы можете позвонить template.fetch(comment.author) в случае необходимости конкретного случая.