模型
public class Organisation {
private String name;
public Organisation() { }
public Organisation(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
控制器
@RequestMapping(method = RequestMethod.GET)
public List<Organisation> getAll() {
Organisation organisation = new Organisation("google");
List<Organisation> organisations = new ArrayList<>();
organisations.add(organisation);
return organisations;
}
这会给出这样的回应:
[
{
"name": "google"
}
]
如果我们想要这样的事情怎么办?
{
"data": [{
"type": "organisations"
"attributes": {
"name": "google"
}
]
}
那么如何自定义json。我知道Spring MVC默认使用Jackson将模型转换为JSON。有没有办法定制它。我正在尝试以JSONApi标准发送响应。也可以有人告诉如何在回复中创建链接
答案 0 :(得分:2)
创建类:
public class Object1 {
private List<Object2> data;
public Object1() {
}
public Object1(List<Object2> data) {
this.data = data;
}
//getters and setters
}
public class Object2 {
private String type;
private Object3 attributes;
public Object2() {
}
public Object2(String type, Object3 attributes) {
this.type = type;
this.attributes = attributes;
}
//getters and setters
}
public class Object3 {
private String name;
public Object3(String name) {
this.name = name;
}
public Object3() {
}
//getters and setters
}
现在你的控制器方法应该是:
@RequestMapping(method = RequestMethod.GET)
public Object3 getAll() {
List<Object2> data = new ArrayList<>();
data.add(new Object2("organisations", new Object3("google")));
return new Object1(data);
}