Java中Json解析的方法分析

 更新时间:2017年05月17日 12:05:24   作者:张旭小侠  
这篇文章主要介绍了Java中Json解析的方法,结合实例形式分析了java针对json格式数据的解析实现步骤与相关操作技巧,需要的朋友可以参考下

本文实例讲述了Java中Json解析的方法。分享给大家供大家参考,具体如下:

首先准备一个JSON格式的字符串

* String JsonStr = "{object:{persons:" +
"[{name:'呵呵',image:'http://10.0.159.132:8080/Web/s1.png'}," +
"{name:'哈哈',image:'http://10.0.159.132:8080/Web/s1.png'}," +
"{name:'嘿嘿',image:'http://10.0.159.132:8080/Web/s2.jpg'}]}}";
* 然后定义一个Person类
*
*
class Person{
  private String name,image;
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public String getImage() {
    return image;
  }
  public void setImage(String image) {
    this.image = image;
  }
}

下面是一个Json解析的程序代码

class MyDay17Xml {
  //json字符串
  static String JsonStr = "{object:{persons:" +
      "[{name:'呵呵',image:'http://10.0.159.132:8080/Web/s1.png'}," +
      "{name:'哈哈',image:'http://10.0.159.132:8080/Web/s1.png'}," +
      "{name:'嘿嘿',image:'http://10.0.159.132:8080/Web/s2.jpg'}]}}";
  public static void main(String []args) throws JSONException{
    List<Person> list=jsonStrToList(JsonStr);
    System.out.println(list.size());
  }
  /**
   *
   *
   *
   */
  public static List<Person> jsonStrToList(String jsonStr) throws JSONException{
    List<Person> list=new ArrayList<Person>();
    //通过字符串,获得最外部的json对象
    JSONObject jsonObj=new JSONObject(jsonStr);
    //通过属性名,获得内部的对象
    JSONObject jsonPersons=jsonObj.getJSONObject("object");
    //获得json对象组
    JSONArray arr=jsonPersons.getJSONArray("persons");
    for(int i=0;i<arr.length();i++){
      //循环对象,并通过getString("属性名");来获得值
      JSONObject tempJson=arr.getJSONObject(i);
      Person person=new Person();
      person.setName(tempJson.getString("name"));
      person.setImage(tempJson.getString("image"));
      list.add(person);
    }
    return list;
  }
}

PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

希望本文所述对大家java程序设计有所帮助。

相关文章

  • 详解idea maven nexus 常见命令配置

    详解idea maven nexus 常见命令配置

    这篇文章主要介绍了idea maven nexus 常见命令配置的相关知识,通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • Java 反射之私有字段和方法详细介绍

    Java 反射之私有字段和方法详细介绍

    本文将介绍Java 反射之私有字段和方法的应用,需呀了解的朋友可以参考下
    2012-11-11
  • Java基础之Web服务器与Http详解

    Java基础之Web服务器与Http详解

    无论你是前端开发者还是后端开发者,以及测试工程师,这篇文章的知识都是你需要弄懂的。读完这一篇文章,将全面弄懂 HTTP 协议、TCP 协议,面试官再也难不倒你相关知识
    2021-09-09
  • JAVA中ArrayList和数组的转换与遇到的问题解决

    JAVA中ArrayList和数组的转换与遇到的问题解决

    做研发的朋友都知道,在项目开发中经常会碰到ArrayList与数组类型之间的相互转换,这篇文章主要给大家介绍了关于JAVA中ArrayList和数组的转换与遇到的问题解决,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • Springboot2.0配置JPA多数据源连接两个mysql数据库方式

    Springboot2.0配置JPA多数据源连接两个mysql数据库方式

    这篇文章主要介绍了Springboot2.0配置JPA多数据源连接两个mysql数据库方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • java ThreadPoolExecutor线程池拒绝策略避坑

    java ThreadPoolExecutor线程池拒绝策略避坑

    这篇文章主要为大家介绍了java ThreadPoolExecutor拒绝策略避坑踩坑示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Java实现打字游戏

    Java实现打字游戏

    这篇文章主要为大家详细介绍了Java实现打字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-08-08
  • Java多线程run方法中直接调用service业务类应注意的问题及解决

    Java多线程run方法中直接调用service业务类应注意的问题及解决

    这篇文章主要介绍了Java多线程run方法中直接调用service业务类应注意的问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • Java实现文件上传和下载的方法详解

    Java实现文件上传和下载的方法详解

    文件上传,也称为upload,是指将本地图片、视频、音频等文件上传到服务器上。文件下载,也称为download,是指将文件从服务器传输到本地计算机的过程。本文将用Java实现文件上传和下载,需要的可以参考一下
    2022-09-09
  • Java枚举之EnumSet详解

    Java枚举之EnumSet详解

    这篇文章主要介绍了Java枚举之EnumSet详解,使用时进行与或运算,但是定义多了之后,会很乱、臃肿,编写容易出错,EnumSet可以实现类似的功能,且使用起来很简洁,需要的朋友可以参考下
    2023-12-12

最新评论