我正在使用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
?
这是一个黑盒子,我不知道怎么做......
答案 0 :(得分:2)
默认情况下不会公开id
属性。
您需要在exposeIdsFor
RepositoryRestConfiguration
方法
类似的东西:
@Configuration
public class MyConfiguration extends RepositoryRestMvcConfiguration {
@Override
protected void repositoryRestConfiguration(RepositoryRestConfiguration config) {
config.exposeIdsFor(User.class);
}
}