我从 Web 服务调用中得到以下 json 响应。正如你所看到的,我们将得到什么类型的值作为响应也来自类型对象。
{"settings":[
{
"name":"name1",
"value":4,
"type":"int"
},
{
"name":"name2",
"value":false,
"type":"boolean"
},
{
"name":"name3",
"type":"array",
"value":[
{
"name":"name3"
}]}]}
- 如何解析这个json?
- 如何将解析的值存储在数据库中,其中我有一个包含列名名称、值等的表?
编辑:
目前我正在将所有值转换为字符串,因为我们无法将布尔值添加到数据库中。
private enum Type{
INT("int"), BOOLEAN("boolean"), ARRAY("array"),UNKNOWN_TYPE("");
private String mType;
Type(String type){
mType = type;
}
public static Type toEnum(String type){
for (Type value: Type.values()){
if(value.mType.equals(type)){
return value;
}
}
return UNKNOWN_TYPE;
}
}
String value = null;
switch (Type.toEnum(type)){
case INT:
value = String.valueOf(setting.getInt("value"));
break;
case BOOLEAN:
value = String.valueOf(setting.getBoolean("value"));
break;
case ARRAY:
parseJsonArray();
break;
}
这是正确的方法吗?