首页 > 学院 > 开发设计 > 正文

json介绍与解析

2019-11-09 18:26:49
字体:
来源:转载
供稿:网友

json介绍

基本概念

javaScript Object Notation符号 基于Javascript语言的轻量级的数据交换格式; 即:用来传输数据的一种格式.

json对象

名(键)值对(name:value) 例:

{name1:value1,name2:value2......}键值对的顺序无所谓

json数组

只是这么叫,并不等同于Object[]我们平时使用的数组概念

[value1,value2,value3,...]

json解析

解析方式有org.json,Gson,fastJson等。。。

org.json解析 * 当json字符串以”{“开始,用JSONObject解析 * 当json字符串以”[“开始,用JSONArray解析

应为我比较喜欢用Gson,所以只介绍Gson解析

User.java

public class User { PRivate String name; private int age; public User() { } public User(String name, int age) { super(); this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "User [name=" + name + ", age=" + age + "]"; }}

用org.json解析String json = “{name:’zhangsan’,age:20}”;

String json = "{"name": "李四", "age": 20}"; JSONObject object = new JSONObject(json); String name = object.getString("name"); int age = object.getInt("age"); System.out.println(name + " " + age); User user = new User(name, age); System.out.println(user);

打印结果为:User [name=李四 , age=20 ]

json解析(Gson)

Gson解析简介

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。

Gson类的常用方法

1.< T > T fromJson(String json,Class clz):将json字符串转成一个类的对象形式2.String toJson(Object obj):将一个javabean类或者集合的对象转成json字符串的形式

举例

String json = "{name:'zhangsan',age:20}";Person p =new Gson().fromJson(json, Person.class);

Person类中定义了name,age属性

用Gson解析String json = “{name:’zhangsan’,age:20}”;

String json = "{"name": "李四", "age": 20}"; // 1、创建一个Gson对象 Gson gson = new Gson(); // 2、解析字符串. User.class : 1、必须有无参的构造方法 2、每个属性必须提供setter getter方法 // 3、类的属性要和json格式的字符串中的键值对要匹配 User user = gson.fromJson(json, User.class); System.out.println(user);

打印结果为:User [name=李四 , age=20 ]

注意: 在用GSON/fastjson解析时,javabean中的属性名和数据类型一定要跟json字符串中的完全一样!


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表