Java中解析json的四种方式
2020-08-10 23:41
477 查看
1)Gson
(1)添加依赖
<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.2.4</version> </dependency>
(2)转化方法
① 对象转Json:
Gson gson = new Gson(); String json = gson.toJson(Object object);
② Json转对象
gson.fromJson(String json, Class<T> classOfT)
③.集合转Json
Gson gson = new Gson(); String json = gson.toJson(Object object);
④.Json转集合
TypeToken<T> typeOfT = new TypeToken<T>(){}; T fromJson = (T)gson.fromJson(json, typeOfT.getType());
2)Json-Lib
(1)添加依赖
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency>
(2)转化方法
① 对象转Json
JSONObject fromObject = JSONObject.fromObject(Object object); String string = fromObject.toString();
② Json转对象
JSONObject fromObject2 = JSONObject.fromObject(string); Object bean =JSONObject.toBean(JSONObject jsonObject, Class beanClass)
③ 集合转Json
JSONArray fromObject = JSONArray.fromObject(Object object); String string = fromObject.toString();
④ Json转集合
JSONArray fromObject2 = JSONArray.fromObject(string); Collection collection = JSONArray.toCollection (JSONArray jsonArray, Class objectClass)
3)Fastjson
Fastjson是阿里巴巴公司开发的,Java语言编写的,JSON的处理器。
(1)添加依赖
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.31</version> </dependency>
(2)转化方法
① 对象转Json
JSON.toJSONString(Object object);
② Json转对象
JSON.parseObject(String text,Class<T> Class);
③ 集合转Json
JSON.toJSONString(Object object)
④ Json转集合:
JSON.parseArray(String text,Class<T> Class);
4)Jackson
(1)添加依赖
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.8.8</version> </dependency>
(2)转换方法
public static String object_to_json(Object object) throws JsonProcessingException { ObjectMapper mapper = new ObjectMapper(); return mapper.writeValueAsString(object); } public static <T> T json_to_object(String json, Class<T> mainClass, Class<?>... parametricClasses) throws JsonParseException, JsonMappingException, IOException { ObjectMapper mapper = new ObjectMapper(); JavaType parametricType = mapper.getTypeFactory().constructParametricType(mainClass, parametricClasses); T readValue = mapper.readValue(json, parametricType); return readValue; }
相关文章推荐
- Java解析JSON的四种方式
- 基于JAVA中的四种JSON解析方式详解
- JAVA中的四种JSON解析方式详解
- Java解析xml文件四种方式
- [Android]四种方式解析字符串----JSON、SAX、DOM、XML
- java中转换json方式(JSONArray,JSONObject),json解析
- java解析xml文件四种方式
- java解析Json的两种方式
- java解析xml文件四种方式
- Android Json数据解析的四种方式
- java解析xml文件四种方式
- java xml解析的四种方式
- Java解析XML文件的四种方式之JDOM解析
- IOS json解析的四种方式
- Java解析XML的四种方式
- java 解析xml的四种方式:sax,dom,dom4j,jdom
- java解析xml文件四种方式
- java解析xml文件的四种方式
- [Android]四种方式解析字符串----JSON、SAX、DOM、XML
- Java解析XML的四种方式详解与比较