JSON格式:
{
"xsm":[
{"1111","11111","111","20100101","11:00:00","20100220","0",
"cgts":[{"1111","10","2","28","30"},{"1111","10","2","28","30"}]},
{"2222","2222","222","20100210","22:00:00","20100220","0",
"cgts":[{"2222","10","2","28","30"},{"2222","10","2","28","30"}]}
]
}说明:json为多个头行表的数据,例子中对应数据库中的两条记录。
第一条记录为
{"1111","11111","222","20100210","20:00:00","20100220","0",
"cgts":[{"1111","10","2","28","30"},{"1111","10","2","28","30"}]},
其中
{"1111","11111","222","20100210","20:00:00","20100220","0",为头信息
"cgts":[{"1111","10","2","28","30"},{"1111","10","2","28","30"}]},为行信息(两行,每个大括号中的内容对应一条行记录)第二条记录为
{"2222","2222","222","20100210","22:00:00","20100220","0",
"cgts":[{"2222","10","2","28","30"},{"2222","10","2","28","30"}]}
其中
{"2222","2222","222","20100210","22:00:00","20100220","0",为头信息
"cgts":[{"2222","10","2","28","30"},{"2222","10","2","28","30"}]}为行信息(两行,每个大括号中的内容对应一条行记录)请问如何用java解析多条记录,以便插入数据库中。请高人解答,非常感谢!
{
"xsm":[
{"1111","11111","111","20100101","11:00:00","20100220","0",
"cgts":[{"1111","10","2","28","30"},{"1111","10","2","28","30"}]},
{"2222","2222","222","20100210","22:00:00","20100220","0",
"cgts":[{"2222","10","2","28","30"},{"2222","10","2","28","30"}]}
]
}说明:json为多个头行表的数据,例子中对应数据库中的两条记录。
第一条记录为
{"1111","11111","222","20100210","20:00:00","20100220","0",
"cgts":[{"1111","10","2","28","30"},{"1111","10","2","28","30"}]},
其中
{"1111","11111","222","20100210","20:00:00","20100220","0",为头信息
"cgts":[{"1111","10","2","28","30"},{"1111","10","2","28","30"}]},为行信息(两行,每个大括号中的内容对应一条行记录)第二条记录为
{"2222","2222","222","20100210","22:00:00","20100220","0",
"cgts":[{"2222","10","2","28","30"},{"2222","10","2","28","30"}]}
其中
{"2222","2222","222","20100210","22:00:00","20100220","0",为头信息
"cgts":[{"2222","10","2","28","30"},{"2222","10","2","28","30"}]}为行信息(两行,每个大括号中的内容对应一条行记录)请问如何用java解析多条记录,以便插入数据库中。请高人解答,非常感谢!
JSONArray jsonarray = JSONArray.fromObject(jsonCarList);
List list = jsonarray.toList(jsonarray);
/**
* 当为数组时
*/
List l = new ArrayList();
ParameterizedType t = (ParameterizedType) f
.getGenericType();
Type[] ts = t.getActualTypeArguments();
isExist = isExist(f.getType());
JSONArray ja = JSONArray.fromObject((jo.get(f
.getName())).toString());
for (int i = 0; i < ja.size(); i++) {
String js = ja.getString(i);
Object ooo = jsonStringToJava(js, (Class) ts[0]);
l.add(ooo);
}
m.invoke(oo, l);
只是我项目中的一段解析LIST的代码
用这种方式可以啊~~ 下个JSON依耐包就可以使用呢。。
sb1.append("[");
sb1.append("{\"HA1\":\"aaaa\",\"HA2\":\"bbbbb\",");
sb1.append(" \"cgts\":[{\"La1\":\"a111\"},{\"La2\":\"a222\"}]}");
sb1.append(",{\"HB1\":\"2222\",\"HB2\":\"2222\",");
sb1.append(" \"cgts\":[{\"Lb1\":\"b111\"},{\"Lb2\":\"b222\"}]}");
sb1.append("]");
String jsonStr=sb1.toString();
JSONArray array = JSONArray.fromObject(jsonStr);
System.out.println(array.toString());
for(Iterator iter = array.iterator(); iter.hasNext();){
JSONObject jsonObject = (JSONObject)iter.next();
System.out.println(jsonObject.toString());
}输出结果如下:(下述第一行和第二行输出时在同一行)
[{"HA1":"aaaa","HA2":"bbbbb","cgts":[{"La1":"a111"},{"La2":"a222"}]},{"HB1":"2222","HB2":"2222","cgts":[{"Lb1":"b111"},{"Lb2":"b222"}]}]
{"HA1":"aaaa","HA2":"bbbbb","cgts":[{"La1":"a111"},{"La2":"a222"}]}
{"HB1":"2222","HB2":"2222","cgts":[{"Lb1":"b111"},{"Lb2":"b222"}]}请问如何对
{"HA1":"aaaa","HA2":"bbbbb","cgts":[{"La1":"a111"},{"La2":"a222"}]}进行处理,以获取头行数据:头:"HA1":"aaaa","HA2":"bbbbb","
行:共两行(此处以一行一个字段为例子,实际实用中一行有多个字段)
"La1":"a111"
"La2":"a222"
请问如何对
{"HA1":"aaaa","HA2":"bbbbb","cgts":[{"La1":"a111"},{"La2":"a222"}]}进行处理,以获取头行数据:
头:"HA1":"aaaa","HA2":"bbbbb","
行:共两行(此处以一行一个字段为例子,实际实用中一行有多个字段)
"La1":"a111"
"La2":"a222"