欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【实用开发手册】Java json解析

程序员文章站 2022-04-13 15:43:23
...
{
    "request":"login",
    "data":
    {
    "username":"zhangsan",
    "password":"123",
    "client":"iphone",
    "other":""
    }
}

上面是JSON数据的格式,大家有没有发现,其实JSON数据就是一个map,为什么JSON可以用来不同语言的通信呢?是因为在不同的语言当中,都可以将JSON数据转换成JSON对象

大家应该理解什么是对象吧。转成对象之后,那么想要获取值(jsonObj,假设转换成JSON对象之后取一个变量名字叫jsonObj)那么想要获取request的值"login",直接jsonObj.request。就可以了

我接下来举个例子, java怎么来实现JSON数据的传输呢,对象是肯定传输不了的,只有把JSON对象,转成字符串,传输之后,到另一方再将字符串又转成JSON,很多语言是完全可以互转的。一下以java为例

首先写一个java类,需要导入一个包import org.json.*;这个包jdk是没有的,要下载一个jar包,这个jar包直接在百度上搜索org.json相关jar包,下载就行,导入eclipse中,

或者下面下载链接链接:https://pan.baidu.com/s/1m6_cBaYLNNshojKiRhfX8Q 密码:htlx下载,导入

【实用开发手册】Java json解析

【实用开发手册】Java json解析

package com.edu.fzxy.jsontest;
 
import org.json.JSONException;
import org.json.JSONObject;
 
public class TestJson {
    public static void main(String[] args) throws JSONException {
        //记得转义,因为最外层已经是"",里面的""要转义
        String jsonStr="{\"request\":\"success\",\"age\":18,\"school\":\"清华大学\"}";
        JSONObject jsonObj = new JSONObject(jsonStr);
        int age = jsonObj.getInt("age");
        String request = (String) jsonObj.get("request");
        System.out.println(age);
        System.out.println(request);
    }
 
}
相关标签: 实用开发手册