How to control depth on custom Spring Data Neo4j repository methods?

℡╲_俬逩灬. 提交于 2020-02-27 06:40:18

问题


For example, if I want to get list of users by name:

class UserRepository extands GraphRepository<User> {

    List<User> findByName(String name);
}

then how to set loading depth to 2?

I tried to find answer in the SDN 4.0.0.RC2 docs, but it isn't contains anything about this issue.


回答1:


Derived finders do not yet support a depth. You'll have to write a custom query or use the loadAllByProperty method on the Neo4jTemplate if applicable.

This should have been mentioned in the docs, we'll add it.




回答2:


As of SDN 4.2.0-M1, this feature has been implemented. It hasn't made it to the reference documentation at the time of this writing, but see this PR for implementation, tests and example app updates.

In short, derived finder methods can now sport a @Depth(n) annotation to specify a fetch depth of n (ref). You can also add a @Depth-annotated argument to method signatures that can be used to specify the fetch depth on each call (ref).

Cheers, @Luanne - this looks great :)



来源:https://stackoverflow.com/questions/32287215/how-to-control-depth-on-custom-spring-data-neo4j-repository-methods

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!