Spring Data Rest修改Repository方法URI

时间:2016-11-16 20:01:02

标签: spring spring-data spring-data-rest

这可能是一个基本问题,但我有一个存储库,我可以通过用户名进行查找,如下所示:

...... /项目/搜索/ byUsername /?用户名=名为myUsername

但是,这通常与AngularJS Resources处理查询的方式不一致。有没有办法为同一件事做出请求URI

...... /项目/?用户名=名为myUsername

或者弹簧数据休息时不存在该功能吗?自定义方法可以在角度资源中进行,但是对于每个可能的搜索类别来说都是单调乏味的

1 个答案:

答案 0 :(得分:1)

如果Angular(读取:客户端库)定义了必须具有的URI,那么它从根本上违反了核心REST原则 - 即客户端遵循链接和URI模板。

也就是说,如果您正在使用Querydsl并让您的存储库扩展QuerydslPredicateExecutor,则可以使用属性表达式过滤集合资源。有关详细信息,请参阅参考文档。

另一种选择是在预期的URI下手动公开资源并手动转发调用。但同样,我认为你最好教Angular一开始就像一个合适的REST客户端。