刚进公司,需要写一个java接口接收lua脚本传递来的json串,不知道怎么样接收取得其中相应的值。
{“car”:{“plate_no”:”京GLP207″,
“owner”:{“name”:”张三”},
“engine_no”:”0121414″,
“vin”:”12124124541″,
“register_date”:”2013-07-03″,
“issue_date”:”2013-07-03″,
“vehicle_type”:”轿车”,
“model”:”大众”,
“use_character”:”客车”},
“insured person”:{“name”:”张三”,
“id_no”:”111111111111111111″},
“insurer”:”太平洋”,
“insurance”:{“qiang”:”1″,
“qiangDateStart”:”2016-07-19″,
“qiangDateEnd”:”2017-07-18″,
“chesun”:{“buji”:”1″},
“daoqiang”:{“buji”:”1″},
“ziran”:{“buji”:”1″},
“boli”:{“baoe”:”国产玻璃(特殊材质)”},
“siji”:{“baoe”:”40000″, “buji”:”1″},
“sanzhe”:{“baoe”:”300000″, “buji”:”1″},
“chengke”:{“unit”:”40000″, “buji”:”1″},
“huahen”:{“baoe”:”10000″, “buji”:”1″},
“shangDateStart”:”1899-12-30″,
“shangDateEnd”:”1899-12-30″}}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
String str =”{“ent_name”:”hhhhhhhhhhhhhhhhh”,”ent_naming”:”dd”,”ent_naming_unit”:”fff”,”ent_escription”:”赛事简介”}”;
Gson gs = new Gson();
Map<String,String> map = gs.fromJson(str, Map.class);
System.out.println(map.get(“ent_name”));
网上查的用的gson但是本人这个json串格式不一致。
{“car”:{“plate_no”:”京GLP207″,
“owner”:{“name”:”张三”},
“engine_no”:”0121414″,
“vin”:”12124124541″,
“register_date”:”2013-07-03″,
“issue_date”:”2013-07-03″,
“vehicle_type”:”轿车”,
“model”:”大众”,
“use_character”:”客车”},
“insured person”:{“name”:”张三”,
“id_no”:”111111111111111111″},
“insurer”:”太平洋”,
“insurance”:{“qiang”:”1″,
“qiangDateStart”:”2016-07-19″,
“qiangDateEnd”:”2017-07-18″,
“chesun”:{“buji”:”1″},
“daoqiang”:{“buji”:”1″},
“ziran”:{“buji”:”1″},
“boli”:{“baoe”:”国产玻璃(特殊材质)”},
“siji”:{“baoe”:”40000″, “buji”:”1″},
“sanzhe”:{“baoe”:”300000″, “buji”:”1″},
“chengke”:{“unit”:”40000″, “buji”:”1″},
“huahen”:{“baoe”:”10000″, “buji”:”1″},
“shangDateStart”:”1899-12-30″,
“shangDateEnd”:”1899-12-30″}}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
String str =”{“ent_name”:”hhhhhhhhhhhhhhhhh”,”ent_naming”:”dd”,”ent_naming_unit”:”fff”,”ent_escription”:”赛事简介”}”;
Gson gs = new Gson();
Map<String,String> map = gs.fromJson(str, Map.class);
System.out.println(map.get(“ent_name”));
网上查的用的gson但是本人这个json串格式不一致。
解决方案
20
单双引号是转义问题,这个你之间用就行不影响,
然后两个大括号,你就当成JSON里面有对键值,对应的值是个JSON格式(反正本人是这么理解的),
相似于Map里面的键是个String而值是个Map
Map<String,Map<String ,String>>