zoukankan      html  css  js  c++  java
  • 一个复杂Json的解析

     1 {
     2     "website": {
     3         "1": {
     4             "basic": {
     5                 "homepage": "http://pythontip.sinaapp.com/",
     6                 "homename": "Python之禅--大道至简"
     7             },
     8             "list": {
     9                 "2": {
    10                     "childpage": "http://pythontip.sinaapp.com/study/books/pythontutorial3-master",
    11                     "chilename": "Python 入门指南"
    12                 },
    13                 "3": {
    14                     "childpage": "http://pythontip.sinaapp.com/coding/code_oj",
    15                     "chilename": "挑战Python"
    16                 }
    17             }
    18         }
    19     }
    20 }

    我使用的是Google的Gson对其做解析,
    下载gson jar包

     1 import java.io.Serializable;
     2 
     3 public class ChildPage implements Serializable {
     4 
     5     /**
     6      * 
     7      */
     8     private static final long serialVersionUID = 1L;
     9     
    10     private String childpage;
    11     private String chilename;
    12     
    13     //getter and setter
    14 
    15     @Override
    16     public String toString() {
    17         return "ChildPage [childpage=" + childpage+ ", chilename=" + chilename + "]";
    18     }
    19 }
     1 import java.io.Serializable;
     2 
     3 public class ParentPage implements Serializable {
     4 
     5     /**
     6      * 
     7      */
     8     private static final long serialVersionUID = 1L;
     9     
    10     private String hostpage;
    11     private String homename;
    12     
    13         //getter and setter
    14     
    15     @Override
    16     public String toString() {
    17         return "ParentPage [homepage=" + homepage+ ", homename=" + homename + "]";
    18     }
    19 }
     1 import java.io.Serializable;
     2 import java.util.HashMap;
     3 
     4 public class ParentAndChildPage implements Serializable {
     5 
     6     
     7     /**
     8      * 
     9      */
    10     private static final long serialVersionUID = 1L;
    11     
    12     private ParentPage basic;
    13     private HashMap<String,ChildPage> list;
    14     
    15         //getter and setter
    16     
    17     @Override
    18     public String toString() {
    19         return "ParentAndChildPage [basic=" + basic + ", list=" + list + "]";
    20     }
    21 }
     1 import java.io.Serializable;
     2 import java.util.HashMap;
     3 
     4 public class Website implements Serializable {
     5 
     6     /**
     7      * 
     8      */
     9     private static final long serialVersionUID = 1L;
    10     
    11     private HashMap<String,ParentAndChildPage> website;
    12 
    13     //getter and setter
    14 
    15     @Override
    16     public String toString() {
    17         return "Website [website=" + website + "]";
    18     }
    19 }
    1 Website website = new Gson().fromJson(json, Website.class);

    注意:Java Bean的属性必须和Json串的key值对应。

  • 相关阅读:
    动态库的链接和链接选项-L,-rpath-link,-rpath
    SSL/TLS 握手过程详解
    数字证书及CA介绍
    sendto函数的坑
    如何捕捉并分析SIGSEGV的现场
    gdb进程调试,多进程调试
    linux下的守护进程daemon
    winform的水印TextBox
    Winform中的TextBox的小技巧
    WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptRes
  • 原文地址:https://www.cnblogs.com/javagoboy/p/3677937.html
Copyright © 2011-2022 走看看