普通Json

{"code":"S0000", "describe":"数据正常返回", "result":"OK"}

 package gsondemo;

 import java.io.Serializable;
import java.util.List; @SuppressWarnings("serial")
public class Common implements Serializable { private String code;
private String describe;
private String result; public String getCode() {
return code;
} public void setCode(String code) {
this.code = code;
} public String getDescribe() {
return describe;
} public void setDescribe(String describe) {
this.describe = describe;
} public String getResult() {
return result;
} public void setResult(String result) {
this.result = result;
} @Override
public String toString() {
return "Common [code=" + code + ", describe=" + describe + ", result=" + result + "]";
} }
 package gsondemo;

 import com.google.gson.Gson;

 public class CommonAna {

     public static void main(String[] args) {
String json = "{\"code\":\"S0000\", \"describe\":\"数据正常返回\", \"result\":\"OK\"}";
Gson gson = new Gson();
Common common = gson.fromJson(json, Common.class);
System.out.println(common);
} }

嵌套json对象

 {"code":"S0000",
"describe":"数据正常返回",
"result":{"accountBlank":"xxxxxx",
"bankAccount":"xxxxxx",
"code":"xxx",
"id":"xxxxxxx",
"kpAddr":"xxxxxx",
"kpCode":"xxxxx",
"kpName":"xxxxx",
"kpTel":"xxx"}}
 package gsondemo;

 import java.io.Serializable;

 @SuppressWarnings("serial")
public class Sub implements Serializable { private String accountBlank;
private String bankAccount;
private String code;
private String id;
private String kpAddr;
private String kpCode;
private String kpName;
private String kpTel; public String getAccountBlank() {
return accountBlank;
} public void setAccountBlank(String accountBlank) {
this.accountBlank = accountBlank;
} public String getBankAccount() {
return bankAccount;
} public void setBankAccount(String bankAccount) {
this.bankAccount = bankAccount;
} public String getCode() {
return code;
} public void setCode(String code) {
this.code = code;
} public String getId() {
return id;
} public void setId(String id) {
this.id = id;
} public String getKpAddr() {
return kpAddr;
} public void setKpAddr(String kpAddr) {
this.kpAddr = kpAddr;
} public String getKpCode() {
return kpCode;
} public void setKpCode(String kpCode) {
this.kpCode = kpCode;
} public String getKpName() {
return kpName;
} public void setKpName(String kpName) {
this.kpName = kpName;
} public String getKpTel() {
return kpTel;
} public void setKpTel(String kpTel) {
this.kpTel = kpTel;
} @Override
public String toString() {
return "NuonuoBean_Result [accountBlank=" + accountBlank + ", bankAccount=" + bankAccount + ", code=" + code
+ ", id=" + id + ", kpAddr=" + kpAddr + ", kpCode=" + kpCode + ", kpName=" + kpName + ", kpTel=" + kpTel
+ "]";
} }
 package gsondemo;

 import java.io.Serializable;
import java.util.List; @SuppressWarnings("serial")
public class CommonWithObject implements Serializable { private String code;
private String describe;
private Sub result; public String getCode() {
return code;
} public void setCode(String code) {
this.code = code;
} public String getDescribe() {
return describe;
} public void setDescribe(String describe) {
this.describe = describe;
} public Sub getResult() {
return result;
} public void setResult(Sub result) {
this.result = result;
} @Override
public String toString() {
return "CommonWithObject [code=" + code + ", describe=" + describe + ", result=" + result + "]";
} }
 package gsondemo;

 import com.google.gson.Gson;

 public class WithObjectAna {

     public static void main(String[] args) {
String json = "{\"code\":\"S0000\","
+" \"describe\":\"数据正常返回\","
+" \"result\":{\"accountBlank\":\"xxxxxx\","
+" \"bankAccount\":\"xxxxxx\","
+" \"code\":\"xxx\","
+" \"id\":\"xxxxxxx\","
+" \"kpAddr\":\"xxxxxx\","
+" \"kpCode\":\"xxxxx\","
+" \"kpName\":\"xxxxx\","
+" \"kpTel\":\"xxx\"}}";
Gson gson = new Gson();
CommonWithObject commonWithObject = gson.fromJson(json, CommonWithObject.class);
System.out.println(commonWithObject);
} }

嵌套json数组

 {"code":"S0000",
"describe":"数据正常返回",
"result":[{"accountBlank":"xxxxxx",
"bankAccount":"xxxxxx",
"code":"xxx",
"id":"xxxxxxx",
"kpAddr":"xxxxxx",
"kpCode":"xxxxx",
"kpName":"xxxxx",
"kpTel":"xxx"}]}
 package gsondemo;

 import java.io.Serializable;
import java.util.List; @SuppressWarnings("serial")
public class CommonWithArray implements Serializable { private String code;
private String describe;
private List<Sub> result; public String getCode() {
return code;
} public void setCode(String code) {
this.code = code;
} public String getDescribe() {
return describe;
} public void setDescribe(String describe) {
this.describe = describe;
} public List<Sub> getResult() {
return result;
} public void setResult(List<Sub> result) {
this.result = result;
} @Override
public String toString() {
return "CommonWithObject [code=" + code + ", describe=" + describe + ", result=" + result + "]";
} }
 package gsondemo;

 import com.google.gson.Gson;

 public class WithArrayAna {

     public static void main(String[] args) {
String json = "{\"code\":\"S0000\","
+" \"describe\":\"数据正常返回\","
+" \"result\":[{\"accountBlank\":\"xxxxxx\","
+" \"bankAccount\":\"xxxxxx\","
+" \"code\":\"xxx\","
+" \"id\":\"xxxxxxx\","
+" \"kpAddr\":\"xxxxxx\","
+" \"kpCode\":\"xxxxx\","
+" \"kpName\":\"xxxxx\","
+" \"kpTel\":\"xxx\"}]}";
Gson gson = new Gson();
CommonWithArray commonWithArray = gson.fromJson(json, CommonWithArray.class);
System.out.println(commonWithArray);
} }

主要区别就是bean类的区别,根据解析的情况组合所需要的bean

Java--Json解析的更多相关文章

  1. Jackson:我是最牛掰的 Java JSON 解析器(有点虚)

    在当今的编程世界里,JSON 已经成为将信息从客户端传输到服务器端的首选协议,可以好不夸张的说,XML 就是那个被拍死在沙滩上的前浪. 很不幸的是,JDK 没有 JSON 库,不知道为什么不搞一下.L ...

  2. JAVA JSON解析:类XPATH解析JSON

    目前JAVA解析JSON的方式有很多种,json-lib啊,GJSON啊,等等都可以解析,但通常是将JSON转换为对象或者是LIST或者是MAP,对于我们测试人员来说,其实我们并不需要里面的全部信息, ...

  3. java json解析(转)

    转自:https://www.cnblogs.com/sunnywindycloudy/p/8343013.html 给服务端发送请求后,服务端会返回一连串的数据,这些数据在大部分情况下都是XML格式 ...

  4. Java进阶学习:JSON解析利器JackSon

    Java:JSON解析利器JackSon JackSon基础 1.Maven项目引入 <!-- https://mvnrepository.com/artifact/org.codehaus.j ...

  5. Json解析工具Jackson(简单应用)

    原文http://blog.csdn.net/nomousewch/article/details/8955796 概述 Jackson库(http://jackson.codehaus.org),是 ...

  6. Java的Json解析包FastJson使用

    阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser. ...

  7. Java下利用Jackson进行JSON解析和序列化

    Java下利用Jackson进行JSON解析和序列化   Java下常见的Json类库有Gson.JSON-lib和Jackson等,Jackson相对来说比较高效,在项目中主要使用Jackson进行 ...

  8. java json 的生成和解析 --json-lib

    类(java json的解析和生成): import java.util.HashMap; import java.util.Map; import net.sf.json.JSONArray; im ...

  9. 你必须掌握的Java基础:JSON解析工具-json-lib

    一.简介  json-lib是一个Java类库,提供将Java对象,包括beans,maps,collections,java arrays和xml等转换成JSON,或者反向转换的功能. 二.准备 在 ...

  10. java中转换json方式(JSONArray,JSONObject),json解析

    package com.yunos.tv.video.resource.controller.web; import java.util.ArrayList; import java.util.Has ...

随机推荐

  1. 二、【重点】环境安装:通过淘宝 cnpm 快速安装使用 React,生成项目,运行项目、安装项目

    1.cnpm代替npm 如果你的系统还不支持 Node.js 及 NPM 可以参考我们的 Node.js 教程. 我们建议在 React 中使用 CommonJS 模块系统,比如 browserify ...

  2. 吴裕雄--天生自然C++语言学习笔记:C++ 多线程

    多线程是多任务处理的一种特殊形式,多任务处理允许让电脑同时运行两个或两个以上的程序.一般情况下,两种类型的多任务处理:基于进程和基于线程. 基于进程的多任务处理是程序的并发执行. 基于线程的多任务处理 ...

  3. Elasticsearch 使用集群 - 删除索引

    章节 Elasticsearch 基本概念 Elasticsearch 安装 Elasticsearch 使用集群 Elasticsearch 健康检查 Elasticsearch 列出索引 Elas ...

  4. Day 15:缓冲输入输出常用方法和小练习

    以拷贝图片为例子,演示异常处理的代码: 拷贝一张图片 import java.io.File;import java.io.FileInputStream;import java.io.FileOut ...

  5. css设置兄弟节点的样式(相邻的前一个节点)

    产品需求:想在鼠标移动到“移除”的时候,“1.产品匹配测试”添加下划线和更改字体颜色 需求分析:从需求可以看出使用 :hover 就可以解决的问题,但是在实践中发现兄弟选择器(+)不好使,(+)只能是 ...

  6. 洛谷 P2543 [AHOI2004]奇怪的字符串

    题目传送门 解题思路: 本题朴素求最长公共子序列即可,但是空间不够,怎么办呢? 空间不够,滚动数组来救 AC代码: #include<iostream> #include<cstdi ...

  7. mailx发送邮件

    cent6.5自带mailx   这是个第三方的邮件发送 比如用自己的126给其他账户发邮件 cent6.5还自带了postfix 可以停掉  sendmail(cent5才自带6是postfix)也 ...

  8. x++ 与 ++x的区别

    相信在很多编程语言中都会遇见这个问题,这对于刚入编程的人来说可能是相当懵逼了. 老师的官方说法是:操作符在前面先进行自身运算,再进行其他运算:操作符在后面,先进行其他运算再进行自身运算. 反正我这段话 ...

  9. jQuery下拉框联动(JQ遍历&JQ中DOM操作)

    1.下载jQuery,并导入:https://blog.csdn.net/weixin_44718300/article/details/88746796 2.代码实现: <!DOCTYPE h ...

  10. 如何保障Assignment写作效率?

    有没有因为开学要交的Assignment而日夜赶工.身心俱疲啊?写Assignment确实是个体力+脑力活,要一直保持旺盛的精力并不容易.精神和身体的疲劳会慢慢分散你的注意力,进而影响效率和写作质量. ...