java 解析Json对象(嵌套json数组)
在这里我需要读取的是json数据中promote的img的url,name,shopPrice。
1.实体类
2.工具类Moblie_Utils根据url获取网络json格式数据
public class Moblie_Utils {
public static String loadJson(String url) {StringBuilder json = new StringBuilder();try {URL urlObject = new URL(url);URLConnection uc = urlObject.openConnection();BufferedReader in = new BufferedReader(new InputStreamReader(uc.getInputStream()));String inputLine = null;while ((inputLine = in.readLine()) != null) {json.append(inputLine);}// System.out.println("json.toString()====="+json.toString());in.close();} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return json.toString();
}}
3.json数据格式,json中包含嵌套json数组
{
"data": {"promote": [{"id": 24,"goods_id": 24,"brief": null,"img": {"thumb": "http://image/1_0.jpg","url": "http://image/1_0.jpg","small": "http://image/1_0.jpg"},"market_price": "0.0","name": "F2000","promote_price": "","shop_price": "0.01"},{"id": 92,"goods_id": 92,"brief": null,"img": {"thumb": "http://image/1_0.jpg","url": "http://image/1_0.jpg","small": "http://image/1_0.jpg"},"market_price": "0.0","name": "23000","promote_price": "","shop_price": "0.01"}],"player": [{"action": null,"action_id": null,"description": null,"photo": {"thumb": null,"url": "http://image/1_0.jpg","small": null},"url": ""},{"action": null,"action_id": null,"description": null,"photo": {"thumb": null,"url": "http://image/1_0.jpg","small": null},"url": ""}]
},
"status": {"succeed": 1,"error_code": null,"error_desc": null
},
"paginated": null,
"session": null
}
4.控制层controller中
@Controller
@RequestMapping("/moblieHome")
public class Moblie_IndexController {@RequestMapping(value = "/hotSale",produces = "text/html;charset=UTF-8")public String mobileHomeCategory(Model model){String url="http://xxxxx/home/data";String homeDataJsonArrayString=Moblie_Utils.loadJson(url);JSONObject jsonObject=null;jsonObject= JSON.parseObject(homeDataJsonArrayString);String data=jsonObject.getString("data");if(data!=null &&data.length()>0){System.out.println("data==="+data);}jsonObject= JSON.parseObject(data);String promote_goods=jsonObject.getString("promote_goods");if(data!=null &&data.length()>0){System.out.println("promote_goods==="+promote_goods);}JSONArray jsonArray =jsonObject.getJSONArray("promote_goods");JSONArray jsonArrayImg=null;JSONObject object=null;JSONObject objectImg=null;List<MobileGoodsBrief> goodsList = new ArrayList<MobileGoodsBrief>();MobileGoodsBrief good=null;if(jsonArray!=null && jsonArray.size()>0) {for (int i = 0; i < jsonArray.size(); i++) {object = jsonArray.getJSONObject(i);good=new MobileGoodsBrief();good.setShopPrice(object.getString("shop_price"));good.setPrice(object.getString("market_price"));good.setName(object.getString("name"));objectImg = JSON.parseObject(object.getString("img").toString());good.setImgUrl(objectImg.getString("url"));goodsList.add(good);}}model.addAttribute("goodsList",goodsList);return "index.jsp";
}
5.controller传值给jsp,
jsp头部注意添加c标签:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="t" uri="http://tiles.apache.org/tags-tiles"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div>
<ul class="good">
<c:forEach items="${goodsList}" var="t">
<li><a target="_blank" href="jump/67939165"><img src="${t.imgUrl}"/></a><a target="_blank" href="jump/67939165"><h1><i class="ico13"><img src="${t.imgUrl}"></i> ${t.name}</h1><div class="list-price buy"><i>¥</i><span class="price-new">${t.shopPrice}</span><i class="del">/¥${t.price}</i><span class="good-btn"><i class="ico15"><img src="data:images/sts.png"/></i> 去抢购</span></div></a>
</li>
</c:forEach>
</ul>
</div>
</body>
</html>
java 解析Json对象(嵌套json数组)相关推荐
- java String、Json对象与byte数组转换
用途 测试String对象与byte数组转换方式 测试Json对象与byte数组转换方式 源代码 import java.io.UnsupportedEncodingException; import ...
- Json对象与Json字符串的转化、JSON字符串与Java对象的转换
一.Json对象与Json字符串的转化 1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符 ...
- json对象(json对象和json数组)
使用Struts2的json插件转换对象的配置问题Action 你好,你可以跟客服去咨询一下. java如果将一个文件变成json对象我有一个文件,需要通过ja google搜索gson 灰常好用的工 ...
- json字符串,JSON对象,JSON数组的区别与相互转换
JSON数组,json字符串,JSON对象,数组的区别与基本操作整理 JSON对象是直接可以使用JQuery操作的格式 JSON字符串仅仅只是一个字符串,一个整体,不截取的话没办法取出其中存储的数据, ...
- js中如何把 json对象转换成 数组
// var data2 = JSON.parse(data); // JSON.parse() 把 json字符串 转化成 json 对象 // var a = JSON.stringify(dat ...
- 如何将json对象转成数组???
如何将json对象转成数组??? 原:var json={"phone_num_wxx":"用户手机号","phone_city_wxx": ...
- Json对象和Json字符串
JSON对象 有时候在做项目的时候时常将这两个概念弄混淆,尤其是在使用springmvc的时候,后台@RequestBody接受的是一个json格式的字符串,一定是一个字符串. 先介绍一下json对 ...
- JavaScript对象、JSON对象、JSON字符串的区别
一.首先看下什么是JSON JSON:JavaScript Object Natation,JavaScript对象的表现形式,已经发展成一种轻量级的数据交换格式. JavaScript对象的表现形式 ...
- json字符串转json对象(前端json字符串转json对象)
小弟我如何把二进制data转换成json字符串 我举个例子,转json用的是fastjson,如附件.ArrayListobj=newArrayList();ArrayListuh=newArrayL ...
- Json对象和Json字符串以及js对象(JavaScript对象)的区别
1.Json概念 概念:JSON (JavaScript Object Notation) 一种简单的数据格式,是一种比较轻量级的数据存储格式: 2.Json与JS对象的对比 区 别 JSON Jav ...
最新文章
- 7-1 堆栈操作合法性(20 分)
- 《构建之法》8.9.10
- saiav.win forum.php,【emWin实战教程V2.0】第4章 emWin5.xx的裸机方式移植(F4
- 3d建模电脑配置要求_学习3D建模需要什么软件,电脑配置应该如何?新手自学会遇到的问题...
- OpenCV通过形态学操作提取水平线和垂直线
- hystrix服务降级
- metadata in OData and png
- HDU 3240 Counting Binary Trees 数论-卡特兰数
- tyvj——P3524 最大半连通子图
- 简单python代码实例_Python简单进程锁代码实例
- 485有时候从机接收指令没反应_多动症儿童反应慢好几拍?神经递质释放速度太慢就会出现这种问题!科学训练高效提升孩子反应力!...
- 2018计算机核心期刊,2018中国科技核心期刊目录!!!!
- 初学者小白怎么画猫咪主题插画?该怎么去注意其中的细节?
- NSI50150ADT4G TO-252 ON安森美 150-350mA 50V 4.2W LED驱动器 工业级规格认证
- 大数据概论、大数据概念、大数据特点(4V)、Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、大数据应用场景、大数据发展前景、大数据部门间业务流程分析
- 用python中的turtle库绘制一些有趣的图
- Java二分法查找数组中某个数的下标
- 2019网易《Face-to-Parameter Translation for Game Character Auto-Creation》论文解析
- “奈雪们”的瓶装茶饮,是门好生意吗?
- 从零开始之驱动发开、linux驱动(二十九、mmap原理)
热门文章
- HbuilderX插件下载失败的解决方法
- [busybox]用busybox做一个rootfs
- App地推活动方案该如何策划?
- 【同步DC-DC降压控制器】5.5V-65V宽输入电压范围 SCT82630
- 网络攻防技术——OSI安全体系
- 定时器误触发功能详解
- Java开发常见英语词汇汇总
- html 多选框点击事件,jquery/javascript:单击复选框上的事件和“checked”属性
- 创业基础(第一章第二章) 来自高校:全国大学生创新创业实践联盟 分类:创新创业 学习规则:按序学习
- turtle绘制科赫雪花