Json解析工具类

这篇文章我是怀着无比激动的心情写得,为啥为啥?因为都要放假了!你们的小心心是不是已经躁动不安了!族长考虑到现在离高速免费通行还有几个小时,大家也闲来无事,在下就写点让小伙伴们打发打发时间!今天我们就看一点通过Gson-2.3.1.jar封装的工具类!希望有助于你(温馨提醒:别看的忘了游玩出行的时间哦~~)

工具类

package com.sunfreeter.util;

import com.google.gson.Gson;import com.google.gson.JsonElement;import com.google.gson.JsonObject;import com.google.gson.JsonParser;

/** *  * @author freeter * @desc Json封装工具类简洁版 */public class JsonUtil {    /**@author 订阅号:sunfreeter     * @desc 对象转Json串     * @param object     * @return     */    public static String toString(Object object){        String jsonString = new Gson().toJson(object);        return jsonString;    }

    /**@author 订阅号:sunfreeter     * @desc Json串转自定义对象     * @param jsonString     * @param object     * @return     */    public static  <T> T stringToObject(String jsonString,Class<T> object){         T toObject = new Gson().fromJson(jsonString,object);        return toObject;    }

    public static JsonObject stringToJosnObject(String jsonString){        JsonParser jsonParser = new JsonParser();        JsonElement jsonElement = jsonParser.parse(jsonString);        JsonObject jsonObject = jsonElement.getAsJsonObject();        return jsonObject;    }

    public static String jsonObjectToJsonString(JsonObject jsonObject){        return jsonObject.toString();    }

}

测试实体类-MyClass

package com.sunfreeter.model;

import java.util.List;

/** *  * @author sunfreeter * @desc 班级 */public class MyClass { private String code; private String name; private List<Student> students;public String getCode() {    return code;}public void setCode(String code) {    this.code = code;}public String getName() {    return name;}public void setName(String name) {    this.name = name;}public List<Student> getStudents() {    return students;}public void setStudents(List<Student> students) {    this.students = students;}}

测试实体类-Student

package com.sunfreeter.model;

/** *  * @author sunfreeter * @desc 学生 */public class Student { private String sno; private String sname; private int age;public String getSno() {    return sno;}public void setSno(String sno) {    this.sno = sno;}public String getSname() {    return sname;}public void setSname(String sname) {    this.sname = sname;}public int getAge() {    return age;}public void setAge(int age) {    this.age = age;}}

测试主入口

package com.sunfreeter.app;

import java.util.ArrayList;import java.util.List;

import com.google.gson.JsonObject;import com.sunfreeter.model.MyClass;import com.sunfreeter.model.Student;import com.sunfreeter.util.JsonUtil;

/** *  * @author 订阅号:sunfreeter * @desc 测试主入口 */public class Test {

    public static void main(String[] args) {        Student student=new Student();        student.setSno("s_001");        student.setSname("张三");        student.setAge(20);

        Student student1=new Student();        student1.setSno("s_002");        student1.setSname("李四");        student1.setAge(30);

        List<Student> list=new ArrayList<Student>();        list.add(student);        list.add(student1);        MyClass mc=new MyClass();        mc.setCode("c_0001");        mc.setName("一年级");        mc.setStudents(list);        String ss=JsonUtil.toString(mc);        System.out.println(ss);        MyClass myClass = JsonUtil.stringToObject(ss, MyClass.class);        System.out.println(myClass.getCode());

        JsonObject jsonObject= JsonUtil.stringToJosnObject(ss);        System.out.println(jsonObject.get("code").getAsString());        System.out.println(jsonObject.get("students").getAsJsonArray());        String ddd = JsonUtil.jsonObjectToJsonString(jsonObject);        System.out.println(ddd);    }}


原文地址:https://www.cnblogs.com/zhengjinsheng/p/11269647.html

时间: 2024-08-02 23:37:10

Json解析工具类的相关文章

Json解析工具类JsonHelper

利用Gson快速解析json 需要导入Gson包,解析成一个对象或一个包含此对象的list JsonHelper代码如下: import java.util.ArrayList; import java.util.List; import android.text.TextUtils; import com.google.gson.Gson; import com.google.gson.JsonParseException; import com.google.gson.JsonParser;

[转] 各种Json解析工具比较 - json-lib/Jackson/Gson/FastJson

JSON技术的调研报告 一 .各个JSON技术的简介和优劣1.json-libjson-lib最开始的也是应用最广泛的json解析工具,json-lib 不好的地方确实是依赖于很多第三方包,包括commons-beanutils.jar,commons-collections-3.2.jar,commons-lang-2.6.jar,commons-logging-1.1.1.jar,ezmorph-1.0.6.jar,对于复杂类型的转换,json-lib对于json转换成bean还有缺陷,比如

Java:JSON解析工具-org.json

一.简介 org.json是Java常用的Json解析工具,主要提供JSONObject和JSONArray类,现在就各个类的使用解释如下. 二.准备 1.在使用org.json之前,我们应该先从该网址https://github.com/douglascrockford/JSON-java下载org.json源码,并将源码其加入到Eclipse中,即可调用. 2.查看相关的API文档,访问:https://github.com/douglascrockford/JSON-java. https

Android应用之——谷歌官方Json解析工具Gson的使用

一.Gson简介 Gson(又称Google Gson)是Google公司发布的一个开放源代码的Java库,主要用途为串行化Java对象为JSON字符串,或反串行化JSON字符串成Java对象.也就是Java对象与json字符串间的互相转换,解析. 二.使用方法 Gson的应用主要为toJson与fromJson两个转换函数,而在使用这种对象转换之前需先创建好对象的类型以及其成员才能成功的将JSON字符串成功转换成相对应的对象.即先创建好对应的javabean,javabean中的字段与要转换的

JSON解析工具-org.json使用教程

原文地址:http://www.open-open.com/lib/view/open1381566882614.html 一.简介 org.json是Java常用的Json解析工具,主要提供JSONObject和JSONArray类,现在就各个类的使用解释如下. 二.准备 1.在使用org.json之前,我们应该先从该网址https://github.com/douglascrockford/JSON-java下载org.json源码,并将源码其加入到Eclipse中,即可调用. 2.查看相关

java处理json的工具类(list,map和json的之间的转换)

需要下载第三方的jar :net.sf.json import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.net.URL; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Map; import java

处理json的工具类({本类为处理json的工具类})

<jackson.version>2.2.3</jackson.version> <!-- json --> <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.3</version> <classifier>jdk15</classif

PHP 命令行参数解析工具类

<?php /** * 命令行参数解析工具类 * @author guolinchao */ class CommandLine { // 临时记录短选项的选项值 private static $shortOptVal = null; // options value private static $optsArr = array(); // command args private static $argsArr = array(); // 是否已解析过命令行参数 private static

java二维码编码和解析工具类

用到两个jar包: QRCode.jar Qrcodeen.jar package com.banmacoffee.utils; import java.awt.Color; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.io.UnsupportedEncodingException; imp