[英]How to expose the resourceId with Spring Data Rest
我曾经暴露了在实体中使用@Id注释的主键.ID字段仅在资源路径上可见,但在JSON主体上不可见。
您可以在实体级别使用RepositoryRestConfigurerAdapter
进行配置。
@Configuration
public class ExposeEntityIdRestConfiguration extends RepositoryRestConfigurerAdapter {
@Override
public void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) {
config.exposeIdsFor(MyEntity.class);
}
}
请注意,使用这个你正在违反spring-data-rest的原则 - sdr促使超媒体能够通过使用链接在资源之间导航来使用API - 这里你的资源被链接识别和引用,因此id不是需要了。 在客户端上使用ID会将构建资源链接的复杂性推向客户端。 客户不应该被这些知识所困扰。
最好的解决方案是不使用实体的ID,并使用超媒体提供的链接引用。 您只需要根据Spring Data Rest使用的HAL规范解析JSON。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.