我正在使用 Spring Boot,我有一个 User
类和一个 UserRepository
接口(interface)。
当我从 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
包含在用户列表中吗?
这是一个黑匣子,我不知道该怎么办...
最佳答案
默认情况下不公开 id
属性。
您需要在 RepositoryRestConfiguration
上使用 exposeIdsFor
方法
类似于:
@Configuration
public class MyConfiguration extends RepositoryRestMvcConfiguration {
@Override
protected void repositoryRestConfiguration(RepositoryRestConfiguration config) {
config.exposeIdsFor(User.class);
}
}
关于java - 如何使用 Spring Boot 在 JSON 中包含 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44579217/