获取的string转JSONArray或JSONObject

获取的string转JSONArray或JSONObject² 返回值:JSON格式字符串{“serviceId”:”3c.park.queryparkstandard”,”resultCode”:0,”message”:”成功”,”dataItems”:[{“objectId”:””,”operateType”:”READ”,”attributes”:{“parkCode”:”park01″,

大家好,又见面了,我是你们的朋友全栈君。

停车场收费标准典型案例:

² 返回值:JSON格式字符串

{

“serviceId”:”3c.park.queryparkstandard,

“resultCode”:0,

“message”:”成功“,

“dataItems”:[{

“objectId”:””,

“operateType”:”READ”,

“attributes”:{

“parkCode”: “park01”,

                     “parkName”: “KKMALL_PARK”,

                     tempStandard“: “临时卡收费标准说明

},

“subItems”: [

                {

“objectId”: “”,

                    “operateType”: “READ”,

                    “attributes”: {

“cardType”: 月卡A

                    },

“subItems”: [

{

         “objectId”: “”,

                             “operateType”: “READ”,

                             “attributes”: {

monthPeriod“:1,

money“:150

                            },

“subItems”: []

}

]

                 },

{

“objectId”: “”,

                    “operateType”: “READ”,

                    “attributes”: {

“cardType”: 月卡B

                    },

“subItems”: [

{

         “objectId”: “”,

                             “operateType”: “READ”,

                             “attributes”: {

monthPeriod“:1,

money“:100

                            },

“subItems”: []

}

]

                 }

           ]

}]

}

获取的string转JSONArray或JSONObject

获取的string转JSONArray或JSONObject


下面获得dataItems的内容,及转换

String jsonString= queryParkStandardServices.execute(params,type);

JSONObject jsonobject=new JSONObject();
jsonobject.put(“json0”, jsonString);//如果String是[{},..]这种形式的,可以形成一个新的单json   {json0:…}
System.out.println(“_________0824———-“+jsonString);
JSONArray jsonarray=new JSONArray();
jsonarray.add(jsonobject);//如果jsonobject里的value是{json0:[{},..]}这种形式的就用JSONArray来承接


JSONObject obResult =  (JSONObject) jsonarray.get(0);

JSONArray    jsonarray01=obResult.getJSONArray(“json0”);

JSONObject json01 =  (JSONObject) jsonarray01.get(0);


JSONObject partone=json01.getJSONObject(“attributes”);
String   parkCodes =(String) partone.get(“parkCode”);//停车场编号
String   parkName=(String) partone.get(“parkName”);//停车场名字
String   tempStandard=(String) partone.get(“tempStandard”);//临时卡收费说明

JSONArray parttwo=json01.getJSONArray(“subItems”);






 


List<FeeStandard> FeeStandards=new ArrayList<>();


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


FeeStandard feeStandard=new FeeStandard();


feeStandard.setParkCode(parkCodes);


feeStandard.setParkName(parkName);


feeStandard.setTempStandard(tempStandard);


JSONObject obResult2 = new JSONObject();


obResult2=
(JSONObject) parttwo.get(i);



JSONObject
attributes=(JSONObject) obResult2.get(“attributes”);


String cardType0=(String) attributes.get(“cardType”);//月卡类型








JSONArray
subItems= (JSONArray) obResult2.getJSONArray(“subItems”);





JSONObject subItems0 = (JSONObject) subItems.get(0);





JSONObject  attributes1=(JSONObject) subItems0.get(“attributes”);





int monthPeriod0=(int) attributes1.get(“monthPeriod”);//月卡收费周期


Double money0=(Double) attributes1.get(“money”);//月卡收费标准





feeStandard.setCardType(cardType0);


feeStandard.setMoney(money0);


feeStandard.setMonthPeriod(monthPeriod0);


FeeStandards.add(feeStandard);





}

注:JSONObject  和JsonObject 都是json对象,但获取对象里面元素是需要用不同对象来承接。

                          String results = EntityUtils.toString(response.getEntity());
JsonObject json=new JsonParser().parse(results).getAsJsonObject();
int resultCode=json.get(“resultCode”).getAsInt();
if(resultCode==0){

JsonElement dataItems=json.get(“dataItems”);

                             } 

JsonObject get到的元素用JsonElement 来承接。

             JSONObject partone=json01.getJSONObject(“attributes”);
String orderNo=(String) partone.get(“orderNo”);//订单编号
String carNo1=(String) partone.get(“carNo”);//车牌号
String totalFee=(String) partone.get(“totalFee”);//总费用

JSONObject get到的元素用String来承接。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/151417.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • matlab微分方程组_matlab求微分方程特解

    matlab微分方程组_matlab求微分方程特解主要内容:matlab参数识别应用,主要适用于微分方程、微分方程组参数识别、simulink模型参数识别,领域不限。1使用matlab识别微分方程参数以及微分方程组(多个微分方程)参数2使用matlab调用simulink并识别simulink模型的参数(m函数与simulink交互)内容为本人在学习过程中总结的知识,拿出来与大家分享,希望大家多多讨论。下边贴出一部分源码,其它完整内容在附件的…

  • 江诗丹顿geneve系列推荐大全_江诗丹顿geneve

    江诗丹顿geneve系列推荐大全_江诗丹顿geneve很多腕表印刻有众多的字母,比如“AUTOMATIC”英文,你知道这代表什么意思呢?这是自动机械表的标志,意味着腕表内部设计着上百个机械零件,也可带你感受机械运转的魅力。那么江诗丹顿geneve是什么意思呢?有什么与众不同的意义呢?学习可让你对腕表界有着更多的了解。江诗丹顿geneve是什么意思?有着什么意义呢?“geneve”,这是日内瓦的意思,也可引申为日内瓦印记,此印记有着百年历史,作用是对时…

    2022年10月23日
  • KL散度、JS散度、Wasserstein距离[通俗易懂]

    KL散度、JS散度、Wasserstein距离[通俗易懂]1.KL散度KL散度又称为相对熵,信息散度,信息增益。KL散度是是两个概率分布P和Q差别的非对称性的度量。KL散度是用来度量使用基于Q的编码来编码来自P的样本平均所需的额外的位元数。典型情况下,P表示数据的真实分布,Q表示数据的理论分布,模型分布,或P的近似分布。定义如下:DKL(P//Q)=−∑x∈XP(x)log1P(x)+∑x∈XP(x)log1Q(x)DKL(…

  • 40个容易上瘾的HTML5网页游戏,总有一款适合你[通俗易懂]

    40个容易上瘾的HTML5网页游戏,总有一款适合你[通俗易懂]我记得姐姐家的孩子在刚刚才学会走路,说话还不能完整的时候就已经能自己用小手点出小游戏的网站来一个人自娱自乐。我一直在想这一代跟着计算机一起茁壮成长的孩子会不会也和美国那一代人一样,出现9岁的黑客和计算机天才。但是并不是信息的成长就能让教育同步。很多时候我们会发现教育在发展的大环境中并没有什么创新的思考。不管怎么说,我们还是需要小盆友们能有足够的想象力。不要被束缚!今天分享的是40个HTML5的网页

  • 数据库系统与数据挖掘的区别_数据挖掘与大数据的关系

    数据库系统与数据挖掘的区别_数据挖掘与大数据的关系数据库系统第一章绪论本章属于基础知识,主要是对一些概念的理解和记忆。没有难点,相对的重点在于ER模型的设计和关系模型的掌握。一、数据管理技术的发展阶段(识记)数据管理技术共经历了三个阶段:人

  • 如何修改手机桌面软件名称_安卓软件如何改名字

    如何修改手机桌面软件名称_安卓软件如何改名字安卓手机怎么修改桌面上软件的名字呀!以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!安卓手机怎么修改桌面上软件的名字呀!使用360手机桌面,在图标上长按可以直接改。或者你使用apkeditor修改软件安装包求助,怎么修改桌面上软件的图标和名字如果是快捷方式的话,点击右键-》属性,在常规选项卡下修改名字,在快捷方式选项卡…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号