java - 如何使用 Spring HATEOAS 在“链接”部分中生成链接集合

标签 java json spring-hateoas

我正在尝试生成类似于以下示例的 JSON 输出:

{
    "links": {
        "self": { "href": "http://api.com/items" },
        "item": [
            { "href": "http://api.com/items/1" },
            { "href": "http://api.com/items/2" }
        ]
    "data": [
            {"itemName":"a"}, 
            {"itemName":"b"} 
     ] 
}

请注意,item 是链接对象的集合。我将如何使用 Spring HATEOAS 来做到这一点?

更新: 多次将相同的 rel 添加到我的 UserResource 中会得到以下结果:

"links": [
    {
        "rel": "self",
        "href": "http://localhost:8080/sophia/users/admin"
    },
    {
        "rel": "item",
        "href": "http://localhost:8080/sophia/companies/01393048000170/item/1"
    },
    {
        "rel": "item",
        "href": "http://localhost:8080/sophia/companies/01393048000170/item/2"
    },
    {
        "rel": "item",
        "href": "http://localhost:8080/sophia/companies/01393048000170/item/3"
    }
]

最佳答案

只需添加多个具有相同关系的链接即可。

Resource resource = new Resource(data);
resource.add(new Link("…", "item"));
resource.add(new Link("…", "item"));

关于java - 如何使用 Spring HATEOAS 在“链接”部分中生成链接集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29108423/

相关文章:

java - Jasper 报告中缺少图像

java 如何在计算后通过四舍五入来保持 int 为 int

spring - 如何将 Spring HATEOAS "linkTo"与 Kotlin DSL 一起使用?

Spring 数据 REST : projection representation of single resource

java - Spring Hateoas @EnableEntityLinks 不提供 EntityLinks bean (NoSuchBeanDefinitionException)

java - 在 View 旁边显示带有自定义数字键盘的弹出窗口

java:在同一个类中运行线程方法

java - 在java中将JSON从一种格式转换为另一种JSON格式

javascript - 使用 Angular 和 ASP WEB API CORE 上传文件?

c# - Json.NET - 将 EmptyOrWhiteSpace 字符串属性转换为 null