我正在使用 Jersey(Jackson POJO 映射)构建一个 RESTful 服务并且有一些疑问......想象一个类似论坛的应用程序,在该域中我有Group和Question POJO。
组.java
class Group{
int id;
String name;
//setter/getters
}
问题.java
class Question{
int id;
String title;
String text;
//setter/getters
}
如您所见,我没有在这两个类之间定义任何关系。我想说的是 Group 没有
private Question[] questions;
当我调用 GET /rest/groups 时,我得到了一个完美的 JSON:
{
[
{"id":1, "name":"Group name..." },
{"id":2, "name":"Group name..." }
]
}
当我请求 GET /rest/groups/12 时,我想要得到的是:
{
"group":{
"id":12,
"name":"Group 12"
},
"questions":[
{"id":102, "title":"question title..." },
{"id":201, "title":"question title..." }
]
}
通过在 Group 类中定义一个成员变量,我能够得到类似的东西:
private Question[] questions;
我试图从 HAS-A 依赖项中清除我的域类,因为我将使用 Hibernate 并将通过注释定义关系。问题是:对于与另一个具有HAS-A关系的资源,我想要返回的JSON格式最好和最灵活的方式是什么......