目录
方式三 fastjson (速度最快,使用最多)
{
"param": "aaa"
}
方式一 jdk 自带jsonObject
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
JSONObject rootObject = new JSONObject(json);
JSONObject jsonObject = JSONObject.fromObject(json);
JSONObject paramzObject = rootObject.getJSONObject("param");
方式二 Gson
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; // 引入
Map<String, Object> Result = new Gson().fromJson(result, new TypeToken<HashMap<String, Object>>() {}.getType());
Map<String, Object> data = (Map<String, Object>) Result.get("param");
方式三 fastjson (速度最快)
jsonObject类其实在很多jar包中都有,注意import导入的对象
JSONObject jsonObject = JSON.parseObject(requestJson);
String param= jsonObject.getString("param");
把json数据转换为指定vo对象,request为请求串,Feedbackquest为指定转换的实体类(vo),支持多层级关系(也就是实体类中还有其他的实体类),有的参数会解析并保存到实体对象中,多余的参数则不会保存
FeedbackRequest feedbackRequest = JSONObject.parseObject(request, FeedbackRequest.class);
方式四 jackSon
解析JSON,SpringMVC内置的解析器
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
详细见参考文章最后
JAVA中的四种JSON解析方式详解 - 道理我都懂Zz - 博客园