如何使用Spring Boot在JSON中包含ID

时间:2017-06-16 01:00:58

标签: java spring-boot

我正在使用Spring Boot,我有一个User类和一个UserRepository接口。

当我从REST API获取用户时,它会将列表返回为JSON+HAL格式,其中包含所有用户的属性,除了id这是主键,这是最重要的,因为我想在URL中使用它来编辑用户......

ID属性在User类中声明如下。

@Id
@Column
@GeneratedValue
private Long id;

这是非常标准的存储库,甚至没有定制。

@RepositoryRestResource(path = "users")
  public interface UserRepository extends CrudRepository<User, Long> {
}

我是否需要调整某些内容以在用户列表中包含id

这是一个黑盒子,我不知道怎么做......

1 个答案:

答案 0 :(得分:2)

默认情况下不会公开id属性。

您需要在exposeIdsFor

上使用RepositoryRestConfiguration方法

类似的东西:

@Configuration
public class MyConfiguration extends RepositoryRestMvcConfiguration {

    @Override
    protected void repositoryRestConfiguration(RepositoryRestConfiguration config) {
        config.exposeIdsFor(User.class);
    }
}