当前位置: 首页 > 实用文档 > 推荐 > 解析json

解析json

2016-11-04 12:19:19 成考报名 来源:http://www.chinazhaokao.com 浏览:

导读: 解析json(共3篇)java中解析json的三种方式 第一种public void jsonTx() {String json = {status:200,message:查询成功,data:[{id:1,name:name1,describe:第一条数据}]};JSONObject data = new JSO...

本文是中国招生考试网(www.chinazhaokao.com)成考报名频道为大家整理的《解析json》,供大家学习参考。

java中解析json的三种方式
解析json 第一篇

//第一种

public void jsonTx() {

String json = "{'status':200,'message':'查询成功','data':[{'id':1,'name':'name1','describe':'

第一条数据'}]}";

JSONObject data = new JSONObject(json);

int status = data.optInt("status");

JSONArray data1 = data.getJSONArray("data");

if (status==200) {

for(int i=0;i<data1.length();i++){

String s = data1.getString(i);

System.out.println(s);

JSONObject data2 = JSONObject.fromObject(s);

System.out.println(data2.getString("id"));

System.out.println(data2.getString("name"));

System.out.println(data2.getString("describe"));

}

}else if(status==500) {

String msg = data.getString("message");

System.out.println(msg);

}

}

//第二种

public void getJson() {

String json =

"{'response':{'data':[{'address':'北京','province':'海淀','district':'西三旗','city':'地铁'}]},'status':'ok'}";【解析json】

JSONObject jsonObject = JSONObject.fromObject(json);

String status = jsonObject.getString("status");

// System.out.println(str);

String response = jsonObject.getString("response");

JSONObject jsonObject2 = JSONObject.fromObject(response);【解析json】

JSONArray data = jsonObject2.getJSONArray("data");

for(int i=0;i<data.length();i++){

String s = data.getString(i);

JSONObject data2 = JSONObject.fromObject(s);

System.out.println(data2.getString("address"));

System.out.println(data2.getString("province"));

System.out.println(data2.getString("district"));

System.out.println(data2.getString("city"));

}

}

//第三种(只获取json里面数据)

public static void main(String[] args) {

String json =

"{\"response\":{\"data\":[{\"address\":\"北京\",\"province\":\"海淀\",\"district\":\"三环\",\"city\":\"桥\"}]},\"status\":\"ok\"}";

String str[] =

json.replaceAll(".*\"address\":\"(.*?)\".*\"province\":\"(.*?)\",.*\"district\":\"(.*?)\",.*\"city\":\"(.*?)\".*",

"$2,$4,$3,$1").split(",");

for (String s : str) {

System.out.println(s);

}

}

jQuery解析JSON
解析json 第二篇

jQuery 中使用 JSON

JSON 格式

json 是 Ajax 中使用频率最高的数据格式,在浏览器和服务器中之间的通讯可离不开它。 需要特别注意的是,在 JSON 中的属性名是需要使用引号引起来的。 jQuery 中使用 JSON

jQuery 是现在使用广泛的脚本库,那么,在 jQuery 中如何使用 JSON 呢?

1、本身就是JSON数据格式。就按JSON数据访问即可,如下例子: $(function(){

var people2={"name1":"a1","name2":"a2","name3":"a3"}; alert(people2.name3);

});

2、如果是JSON数据格式的字符串,则先要调用jQuery.parseJSON()把字符串转化为JSON数据格式。

<script type="text/javascript">

$(function(){

var people='{"name1":"a1","name2":"a2","name3":"a3"}'; var json= $.parseJSON(people);

alert(json.name2);

});

</script>

3、jquery-json 扩展库

这个库用来扩展 jQuery ,对于 JSON 的使用,扩展了两个方法。 toJSON 方法用来将一个普通的 JSON对象序列化为 JSON字符 串。 evalJSON 方法将一个 JSON字符串解析为一个普通的 JSON对象。 <!DOCTYPE html>

<html>

<head>

<title></title>

<script type="text/javascript" src="js/jquery-1.11.0.js"></script>

<script type="text/javascript" src="js/jquery.json-2.4.min.js"></script>

</head>

<body>

</body>

<script type="text/javascript">

$(function(){

var thing = {'plugin':'jquery-json', 'version':'2.3'};

var encoded = $.toJSON(thing); // 把一个JSON转化为String

var name = $.evalJSON(encoded).plugin; // 把一个String解析为JSON alert(name);

});

</script>

</html> 4、$.getJSON()

获取JSON数据,在jQuery中有一个简单的方法 $.getJSON() 可以实现。

下面引用的是官方API对$.getJSON()的说明:

jQuery.getJSON( url, [data,] [success(data, textStatus, jqXHR)] ) url A string containing the URL to which the request is sent.

Data A map or string that is sent to the server with the request.

success(data, textStatus, jqXHR) A callback function that is executed if the request succeeds.

$.each()是用来在回调函数中解析JSON数据的方法,下面是官方文档:

jQuery.each(collection,callback(indexInArray, valueOfElement) )

collection:The object or array to iterate over.

callback(indexInArray, valueOfElement)The function that will be executed on every object.

$.each()方法接受两个参数,第一个是需要遍历的对象集合(JSON对象集合),第二个是用来遍历的方法,这个方法又接受两个参数,第一个是遍历的index,第二个是当前遍历的值。

function loadInfo() {

$.getJSON("loadInfo", function(data) {

$("#info").html("");//清空info内容

$.each(data.comments, function(i, item) {

$("#info").append(

"<div>" + item.id + "</div>" +

"<div>" + item.nickname + "</div>" +

"<div>" + item.content + "</div><hr/>");

});

});

}

示范源代码:

项目结构图:

Index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%

String path = request.getContextPath();

String basePath =

request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page">

<!--

-->

<script type="text/javascript" src="js/jquery-1.11.0.js"></script></head>

<body>

<div id="info"></div>

</body> <script type="text/javascript">

$(function(){

alert("OK");

$.getJSON("json", function(data) {

$("#info").html("");//清空info内容

$.each(data.comments, function(i, item) {

$("#info").append(

"<div>" + item.id + "</div>" +

"<div>" + item.nickname + "</div>" +

"<div>" + item.content + "</div><hr/>");

});

});

});

</script>

</html>

jsonServlet.java

import java.io.IOException;

import java.io.PrintWriter;【解析json】

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONObject;

@WebServlet("/json")

public class jsonServlet extends HttpServlet {

/**

*

*/

private static final long serialVersionUID = 1L;

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

【解析json】

System.out.println("OK");

resp.setCharacterEncoding("utf-8");

String jsonStr="{'comments':[{'content':'很好!','id':1,'nickname':'nake'}, {'content':'very good!','id':2,'nickname':'nice'}]}";

JSONObject json=JSONObject.fromObject(jsonStr);

PrintWriter out=resp.getWriter();

out.print(json);

out.flush();

}

@Override

protected void doPost(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

doGet(req, resp);

}

}

5、jquery解析map数据

$.each()遍历Map的时候,function()中的参数是key和value

项目结构图:

JSON解析详细文档
解析json 第三篇

JSON 的含义?

JSON的全称是JavaScript Object Notation,是一种轻量级的数据交换格式。JSON与XML具有相同的特性,例如易于人编写和阅读,易于机器生成和解析。但是JSON比XML数据传输的有效性要高出很多。JSON完全独立与编程语言,使用文本格式保存。

JSON数据有两种结构:

 

Name-Value 对构成的集合,类似于Java中的Map。 Value的有序列表,类似于Java中的Array。

一个JSON格式的数据示例: {

"Name": "Apple",

"Expiry": "2007/10/11 13:54", "Price": 3.99, "Sizes": [ "Small", "Medium", "Large" ] }

更多关于JSON数据格式的说明参看JSON官方网站:/retype/zoom/f4f64fd1b14e852458fb572c?pn=5&x=0&y=1586&raww=14&rawh=15&o=png_6_0_0_213_608_16_17_893.25_1263.375&type=pic&aimh=15&md5sum=9947825c5cc6765ae336e9aa6fe51ad4&sign=9a7fab3c4a&zoom=&png=2712-6841&jpg=0-0" target="_blank">

相关热词搜索:java解析json字符串 js解析json字符串

最新推荐成考报名

更多
1、“解析json”由中国招生考试网网友提供,版权所有,转载请注明出处。
2、欢迎参与中国招生考试网投稿,获积分奖励,兑换精美礼品。
3、"解析json" 地址:http://www.chinazhaokao.com/tuijian/723377.html,复制分享给你身边的朋友!
4、文章来源互联网,如有侵权,请及时联系我们,我们将在24小时内处理!

最新成考报名

成考报名排行榜