在Spring Web App中创建自定义JSONresponse

时间:2019-02-13 18:22:58

标签: json spring api spring-boot response

我是Spring Boot的新手,我不知道如何处理JSON响应。希望你能帮助我。

这是我的模特

 @Entity
public class Employee {
    private @Id @GeneratedValue Long id;
    private String name;
    private String role;

    public Employee() {}

    public Employee(String name, String role) {
        this.name = name;
        this.role = role;
}

我的存储库

public interface EmployeeRepository extends JpaRepository<Employee, Long> {}

我的控制器

@RestController
public class EmployeeController {
    private final EmployeeRepository repository;

    @GetMapping("employees/{id}")
    Employee one(@PathVariable Long id) {
        return repository.findById(id);
}

我的JSON文件响应

{"id":1,"name":"Bilbo Baggins","role":"burglar"},

我想要

之类的东西
{
 "id": 1,
 "name": "Bilbo Baggins",
 "role": "burglar",
 "_links": {
   "self": {
     "href": "http://localhost:8080/employees/1"
   },
   "employees": {
     "href": "http://localhost:8080/employees"
   }
 }
}

通过向JSON文件添加更多详细信息。我在Hat.eos上遵循spring.io上的指南,但是没有用。我认为可能还有另一种方法。

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

您需要添加HATEOAS依赖项。在行家中将是:

<dependency>
    <groupId>org.springframework.hateoas</groupId>
    <artifactId>spring-hateoas</artifactId>
    <version>0.19.0.RELEASE</version>
</dependency>