如何在JAX_RS中建立HATEOAS响应

时间:2020-04-06 09:11:18

标签: json jersey jax-rs

是否存在在Jax-RS(或更具体地说是Jersey)中构建HATEOAS JSON响应的标准方法?现在,我只将实体作为JSON响应返回,但是我也想合并链接。我一直在研究JsonArray和JsonObject,我的想法是可以添加我的实体和一个小的链接对象,然后可以返回该对象。但是,据我所知,您必须一个一个地添加每个元素,而不仅仅是添加整个Object。

以下是示例实体:

@Data
@Entity
@NoArgsConstructor
public class Brand {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;
    private String brandName;
    public Brand(String brandName){
        this.brandName = brandName;
    }

}

链接类:

@Data
@AllArgsConstructor
public class Link {
    private String link;
    private String rel;
}

响应:

    @GET
    public Response getIt() {
        brandDAO.create(new Brand("Rolex"));
        brandDAO.create(new Brand("Omega"));


        return Response
                .status(200)
                .entity(brandDAO.findAll())
                .type(MediaType.APPLICATION_JSON)
                .build();
    }

0 个答案:

没有答案