java解析复杂json报文(java json字符串解析)

本文目录一览:

用java怎么解析复杂的JSON

json-lib-2.4-jdk15.jar 这个包还另需一下几个包。

jakarta commons-lang 2.5

jakarta commons-beanutils 1.8.0

jakarta commons-collections 3.2.1

jakarta commons-logging 1.1.1

ezmorph 1.0.6

把上边的json定义为一个字符串 str,建议不要直接用还是自己动手写写。这样比较容易掌握方法。

JSONObject ob=JSONObject.fromObject(str);

Object success=ob.get(“success”);

Object errorMsg=ob.get(“errorMsg”);

System.out.println(success);

System.out.println(errorMsg);

JSONObject data=ob.getJSONObject(“data”);

Object total=data.get(“total”);

System.out.println(total);

JSONArray array=data.getJSONArray(“rows”);

JSONObject rows=null;

for(int i=0;iarray.size();i++){

rows=array.getJSONObject(i);

Object id=rows.get(“id”);

System.out.println(id);

Object workName=rows.get(“workName”);

System.out.println(workName);

Object assigneeName=rows.get(“assigneeName”);

System.out.println(assigneeName);

Object name=rows.get(“name”);

System.out.println(name);

Object processInstanceInitiatorName=rows.get(“processInstanceInitiatorName”);

System.out.println(processInstanceInitiatorName);

Object processInstanceStartTime=rows.get(“processInstanceStartTime”);

System.out.println(processInstanceStartTime);

Object createTime=rows.get(“createTime”);

System.out.println(createTime);

Object dueDate=rows.get(“dueDate”);

System.out.println(dueDate);

}

java 如何解析JSON

一、JSON(JavaScriptObjectNotation)一种简单的数据格式,比xml更轻巧。Json建构于两种结构:1、“名称/值”对的集合(Acollectionofname/valuepairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hashtable),有键列表(keyedlist),或者关联数组(associativearray)。如:{“name”:”jackson”,“age”:100}2、值的有序列表(Anorderedlistofvalues)。在大部分语言中,它被理解为数组(array)如:{“students”:[{“name”:”jackson”,“age”:100},{“name”:”michael”,”age”:51}]}二、java解析JSON步骤A、服务器端将数据转换成json字符串首先、服务器端项目要导入json的jar包和json所依赖的jar包至builtPath路径下(这些可以到JSON-lib官网下载:)然后将数据转为json字符串,核心函数是:publicstaticStringcreateJsonString(Stringkey,Objectvalue){JSONObjectjsonObject=newJSONObject();jsonObject.put(key,value);returnjsonObject.toString();}B、客户端将json字符串转换为相应的javaBean1、客户端获取json字符串(因为android项目中已经集成了json的jar包所以这里无需导入)publicclassHttpUtil{publicstaticStringgetJsonContent(StringurlStr){try{//获取HttpURLConnection连接对象URLurl=newURL(urlStr);HttpURLConnectionhttpConn=(HttpURLConnection)url.openConnection();//设置连接属性httpConn.setConnectTimeout(3000);httpConn.setDoInput(true);httpConn.setRequestMethod(“GET”);//获取相应码intrespCode=httpConn.getResponseCode();if(respCode==200){returnConvertStream2Json(httpConn.getInputStream());}}catch(MalformedURLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}return””;}privatestaticStringConvertStream2Json(InputStreaminputStream){StringjsonStr=””;//ByteArrayOutputStream相当于内存输出流ByteArrayOutputStreamout=newByteArrayOutputStream();byte[]buffer=newbyte[1024];intlen=0;//将输入流转移到内存输出流中try{while((len=inputStream.read(buffer,0,buffer.length))!=-1){out.write(buffer,0,len);}//将内存流转换为字符串jsonStr=newString(out.toByteArray());}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}returnjsonStr;}}2、获取javaBeanpublicstaticPersongetPerson(StringjsonStr){Personperson=newPerson();try{//将json字符串转换为json对象JSONObjectjsonObj=newJSONObject(jsonStr);//得到指定jsonkey对象的value对象JSONObjectpersonObj=jsonObj.getJSONObject(“person”);//获取之对象的所有属性person.setId(personObj.getInt(“id”));person.setName(personObj.getString(“name”));person.setAddress(personObj.getString(“address”));}catch(JSONExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}returnperson;}publicstaticListgetPersons(StringjsonStr){Listlist=newArrayList();JSONObjectjsonObj;try{//将json字符串转换为json对象jsonObj=newJSONObject(jsonStr);//得到指定jsonkey对象的value对象JSONArraypersonList=jsonObj.getJSONArray(“persons”);//遍历jsonArrayfor(inti=0;i

Java json多层解析

JSONObject的dataJson =新的JSONObject(“你的JSON数据”);

JSONObject的响应= dataJson.getJSONObject(“响应”);

JSONArray数据= response.getJSONArray(“数据”); JSONObject的信息= data.getJSONObject(0);

字符串省= info.getString(“省”);

弦乐城市= info.getString(“城市”);

字符串区= info.getString(“区”);

字符串地址= info.getString(“地址”);

System.out.println(省+市+区+地址);

java怎么解析我这个json数据

一、 JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。

Json建构于两种结构:

1、“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 如:

{

“name”:”jackson”,

“age”:100

}

2、值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)如:

{

“students”:

[

{“name”:”jackson”,“age”:100},

{“name”:”michael”,”age”:51}

]

}

二、java解析JSON步骤

A、服务器端将数据转换成json字符串

首先、服务器端项目要导入json的jar包和json所依赖的jar包至builtPath路径下(这些可以到JSON-lib官网下载:)

然后将数据转为json字符串,核心函数是:

public static String createJsonString(String key, Object value)

{

JSONObject jsonObject = new JSONObject();

jsonObject.put(key, value);

return jsonObject.toString();

}

原创文章,作者:V74RE,如若转载,请注明出处:https://www.506064.com/n/127376.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
V74RE的头像V74RE
上一篇 2024-10-03 23:15
下一篇 2024-10-03 23:15

相关推荐

  • Python Dask

    在机器学习和数据科学的现代世界中,非常容易找到与众不同的 Python Tools。这些软件包包括 scikit-learn、NumPy 或pands,它们不能根据内存使用或处理时…

  • java与python,java和python哪个就业前景好

    本文目录一览: 1、学Java好还是Python好? 2、java和python学习哪个未来发展前景更好 3、java和python是什么? 4、python与java哪个好 5、…

    编程 2024-11-26
  • 阿里云mysql实例好用吗(阿里的mysql做了哪些优化)

    本文目录一览: 1、云数据库MySQL的优势是什么?有什么优惠活动吗? 2、阿里云云数据库MySQL有什么特点或优势 3、阿里云1核1 gb 的实例能运行mysql吗 云数据库My…

    编程 2024-11-09
  • 如何在CSS中实现背景图平铺效果

    一、使用background-repeat实现背景图平铺 在CSS中,我们可以使用background-repeat属性来实现背景图平铺的效果,该属性有四个取值: repeat: …

    编程 2024-11-04
  • PostgreSQL Schema的全面了解

    一、概述 PostgreSQL是一种开源的关系型数据库管理系统(RDBMS),具有可扩展性、稳定性、安全性等特点。Schema是PostgreSQL数据库中的一个基本概念,用于组织…

    编程 2024-10-03
  • php无法解析的解决方法,php错误处理

    本文目录一览: 1、PHP文件不能解析 2、php上传文件时无法解析域名怎么办 3、linux安装完Apache和PHP后,为什么还是不能解析php网页啊? 4、求助~~~PHP文…

    编程 2024-10-14
  • Systemback详解

    Systemback是一款开源的系统备份和还原软件,它可以帮助用户备份整个系统,包括操作系统、文件、应用程序以及用户数据。此外,Systemback还可以创建系统恢复点和Live系…

    编程 2024-12-03
  • numpy菜鸟教程详解

    一、numpy菜鸟教程100例 numpy是数值计算的Python基础库,它支持大量的维度数组与矩阵运算以及高等数学函数,是科学计算和数据分析的工具之一。numpy菜鸟教程100例…

    编程 2024-11-26
  • Java字符串截取方法详解

    在Java编程中,字符串是一种常见的数据类型。在对字符串进行操作的时候,经常需要对字符串进行截取操作。本文将从多个方面详细阐述Java字符串截取方法。 一、 substring方法…

    编程 2024-12-04
  • MySQL Text 和 Longtext

    MySQL数据库中有多种数据类型可供选择,其中Text 和 Longtext 是常用的数据类型之一。本文将从多个方面详细阐述这两种数据类型的特点和使用方法。 一、Mysql Tex…

    编程 2024-11-14

发表回复

登录后才能评论