我有一个 REST 控制器,它需要 JSON 格式的复杂对象。
假设 A.class 与 B.class 的集合有关联。
class A {
private List<B> values;
...
}
class B {
private String name;
...
}
简化的控制器如下所示:
def create(){
def jsonObject = request.JSON;
A a = new A(jsonObject);
....
}
假设,我将以下 JSON 发送到控制器:
{"values":[{"name":"test1"},{"name":"test2"}]}
在控制器中,jsonObject 的“values”属性为 JsonArray。我希望 Grails 绑定构造函数为我将 JsonArray“值”绑定到列表“值”,但事实并非如此。在 Spring MVC 中,JacksonMapper 为我完成了这项工作。我喜欢这样的东西。
我是否必须自己手动迭代 JsonArray 并将数组中的项目转换为域对象?