默认响应必须保持不变,以确保
PUT请求的有效负载
GET与返回的请求对称。但是,Spring Data
REST引入了一个称为投影的功能(有关详细信息,请参见JIRA票证),其功能如下:
您创建一个专用接口,并添加要包括在响应中的所有属性:
public interface MyProjection { String getMyProperty(); MyRelatedObject getOtherDomain();}你可以
- 使用域注释接口
@Projection
,并将其放置在与域类型或其子包相同的包中 - 或使用
RepositoryRestConfiguration
和手动注册投影,并projectionConfiguration().addProjection(…)
手动调用(通过扩展RepositoryRestMvcConfiguration
和覆盖configureRepositoryRestConfiguration(…)
)。
这将导致为域类型公开的资源接受带有投影名称的
projection参数(名称也可配置
ProjectionConfiguration)。如果给出,我们将跳过默认渲染(包括渲染相关实体的链接而不是嵌入它们),并让Jackson渲染支持给定接口的代理。
一个例子也可以在Spring RESTBucks项目中找到。有关
OrderProjection接口定义,请参见。



