它需要一个PagedResourcesAssembler,如果您需要,Spring会为您注入一个。
public PagedResources<Foo> get(Pageable page, PagedResourcesAssembler<Foo> assembler) { // ...}在这种情况下,资源为
Foo。在您的情况下,您似乎要返回的资源是
Event。如果是这样,我希望您的代码看起来像这样:
private ResourceAssembler<Event> eventAssembler = ...;public PagedResources<Event> get(Pageable page, PagedResourcesAssembler<Event> pageAssembler) { Event event = ...; return eventAssembler.toResource(event, pageAssembler);}您提供的内容
ResourceAssembler<Event>可以告诉Spring如何
Event变成
Resource。Spring将注入
PagedResourcesAssembler<Event>到控制器方法中以处理分页链接。通过调用
toResource并传入注入将它们组合在一起
pageAssembler。
最终结果可以像上面一样简单地作为主体返回。您还可以使用类似的方法
HttpEntity来更好地控制状态代码和标头。
注意:
ResourceAssembler您提供的字面上实际上可以像
Event用
Resource对象包装资源一样简单。通常,您将需要添加任何相关链接。



