这个休息服务网址是如何形成的?

时间:2018-02-18 03:47:05

标签: spring-boot neo4j

我正在学习这个例子:

https://github.com/neo4j-examples/movies-java-spring-data-neo4j

在这个MovieRepository中,这是路径设置:

collectionResourceRel = "movies", path = "movies". 

那么为什么查询必须包含'搜索'字符串:

// JSON object for single movie with cast
curl http://localhost:8080/movies/search/findByTitle?title=The%20Matrix

我认为它应该是" curl http://localhost:8080/movies/findByTitle?title=The%20Matrix"没有"搜索"在http请求中。在所有文件中,我无法找到"搜索"的任何痕迹。这是怎么发生的?

@RepositoryRestResource(collectionResourceRel = "movies", path = "movies")
public interface MovieRepository extends PagingAndSortingRepository<Movie, Long> {

    Movie findByTitle(@Param("title") String title);

    Collection<Movie> findByTitleLike(@Param("title") String title);

    @Query("MATCH (m:Movie)<-[r:ACTED_IN]-(a:Person) RETURN m,r,a LIMIT {limit}")
    Collection<Movie> graph(@Param("limit") int limit);
}

1 个答案:

答案 0 :(得分:0)

Spring Data REST documentation

中对此进行了描述
  

要将结果排序在特定属性上,请添加排序网址   带有要对结果进行排序的属性名称的参数   上。您可以通过附加a来控制排序的方向   属性名称加上asc或desc。以下将使用   findByNameStartsWith在PersonRepository上定义的查询方法   名称以字母&#34; K&#34;开头的所有Person实体;并添加   排序以降序排序name属性上的结果的数据   顺序:

curl -v "http://localhost:8080/people/search/nameStartsWith?name=K&sort=name,desc"