如何在Spring Data REST中添加指向root资源的链接?

Sta*_*007 13 spring-data-rest

如何在Spring Data REST 资源根列表中公开外部资源(不通过存储库管理)?我在Restbucks中按照模式定义了一个控制器

Sta*_*007 21

这可以通过实施来完成ResourceProcessor<RepositoryLinksResource>.

以下代码段将"/ others"添加到根列表中

@Controller
@ExposesResourceFor(Other.class)
@RequestMapping("/others")
public class CustomRootController implements
        ResourceProcessor<RepositoryLinksResource> {

    @ResponseBody
    @RequestMapping(method = RequestMethod.GET)
    public ResponseEntity<Resources<Resource<Other>>> listEntities(
            Pageable pageable) throws ResourceNotFoundException {
            //... do what needs to be done
    }

    @Override
    public RepositoryLinksResource process(RepositoryLinksResource resource) {
        resource.add(ControllerLinkBuilder.linkTo(CustomRootController.class).withRel("others"));

        return resource;
    }
}
Run Code Online (Sandbox Code Playgroud)

应该添加

{
    "rel": "others",
    "href": "http://localhost:8080/api/others"
}
Run Code Online (Sandbox Code Playgroud)

到您的根列表链接

  • 如何为非控制器链接执行此操作?(具体来说我想添加spring security logout) (2认同)