简介
HATEOAS 是实现 REST 规范的一种原则,通过遵循 HATEOAS 规范,可以解决我们实际代码实现的各种个问题。作为 java 最流行的框架 Spring 当然也会不缺席 HATEOAS 的集成。
本文将会通过一个具体的例子来讲解如何在 SpringBoot 中使用 HATEOAS。
我们的目标
HATEOAS 规则中,返回的数据会带有链接。我们以熟悉的 Book 为例,来展示这次的 HATEOAS,首先创建一个 Book entity:
@Data
@Entity
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String title;
}
复制代码
我们希望能够通过下面的链接来获取到 Book 的详细数据:
GET /book/1
复制代码
返回的数据如下:
{
"content": {
"id": 1,
"title": "The Hobbit"
},
"_links": {
"self": {
"href": "http://localhost:8080/book/1"
}
}
}
复制代码
可以看到在返回