サーバーサイドはJSONIC最高!

割と複雑なJSONも以下のようなコードだけでJavaクラスに変換できるのは最高です。

[
{
"fields": [
{
"name": "c",
"type": "String"
}
],
"modelName": "b"
},
{
"fields": [
{
"name": "title",
"type": "String"
},
{
"name": "bbb",
"type": "Boolean"
}
],
"modelName": "xx"
}
]


package com.akjava.gae;

import net.arnx.jsonic.JSON;

public class JSONICTest {

/**
* @param args
*/
public static void main(String args) {
String json="[{\"modelName\":\"b\", \"fields\":[{\"name\":\"c\", \"type\":\"String\"}]},{\"modelName\":\"xx\", \"fields\":[{\"name\":\"title\", \"type\":\"String\"},{\"name\":\"bbb\", \"type\":\"Boolean\"}]}]";
Model list
=JSON.decode(json,Model.class);

for (int i = 0; i < list.length; i++) {
System.out.println(list[i]);
}

}

public class Model {
private String modelName;
private Field
fields;
public String getModelName() {
return modelName;
}
public void setModelName(String modelName) {
this.modelName = modelName;
}
public Object getFields() {
return fields;
}
public void setFields(Field
fields) {
this.fields = fields;
}
public String toString(){
return modelName+","+fields[0].getName();
}
}
public class Field{
private String name;
private String type;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
}
}