java解析JSON数据


//
请求登录的JSON数据 { "request":"login", "data": { "username":"zhangsan", "password":"123", "client":"iphone", "other":"" } } 

 

免费chatgpt使用网址 http://ffff.chat:2023  在设置中设置userID

 

上面是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下载,导入

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);
	}

}

 

posted @ 2018-03-24 12:29  my日常work  阅读(46306)  评论(0编辑  收藏  举报