我使用Spring Data Rest 2.1.1 Release和默认配置.考虑以下资源:
GET /communities/MyCommunity
{
"creationDate": "2014-07-16T06:22:37.153+0000","name": "GroupeSEB","_links": {
"self": {
"href": "http://localhost:8080/api/communities/GroupeSEB"
},"posts": {
"href": "http://localhost:8080/api/communities/GroupeSEB/posts"
}
}
}
当我得到“帖子”子资源时:
GET /communities/MyCommunity/posts
{
"_embedded": {
"posts": [
{
"creationDate": "2014-07-09T13:09:14.535+0000","id": "53bd3efae4b012818368c549","_links": {
"self": {
"href": "http://localhost:8080/api/posts/53bd3efae4b012818368c549"
}
}
}
]
}
}
最佳答案
答案很简单:你做不到.这是基本原理:
关联资源表示主要实体与一个或多个其他实体之间的关联.因此,为了呈现这些资源,我们查找主要实体并只访问该属性.这意味着,没有存储库使用,并且不能应用地点分页,因为整个机制与存储无关.我们对实体实例进行操作如何加载关联的机制是高度特定于商店的.
因此,如果您的域模型中已经有对象关联,那么您完全受商店处理关联的方式的约束.因此,即使您应用分页,您也必须首先阅读所有相关对象以获取其ID.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。