json原生解析,fastjson解析方法

 eg:json 的一条数据 

{
    "告警列表":[
        {
            "taskid":"36",
            "接收人":"",
            "域名":"总局门户网站",
            "时间":"2018-03-26 18:41:29",
            "类型":"3",
            "描述":"网站监控:网站监测-内容监控[总局门户网站]存在网页内容安全性风险,发现1个网页敏感词;
		   (监控总页面数:25)。
		    [告警时间:2018-03-26 18:41:29\n发件单位:网神信息技术(北京)股份有限公司\t所属账户:admin]",
	    "站点id":"819",
            "告警id":"75536"
        }
     ]
}

可以从上面看出是一个对象包含一个数组,数组里面包含一个对象。

{}对象

[]数组

转成String

//		 String json_2="{\r\n" + 
//		 		"    \"告警列表\":[\r\n" + 
//		 		"        {\r\n" + 
//		 		"            \"taskid\":\"36\",\r\n" + 
//		 		"            \"接收人\":\"\",\r\n" + 
//		 		"            \"域名\":\"总局门户网站\",\r\n" + 
//		 		"            \"时间\":\"2018-04-10 18:41:29\",\r\n" + 
//		 		"            \"类型\":\"3\",\r\n" + 
//		 		"            \"描述\":\"网站监控:网站监测-内容监控[总局门户网站]存在网页内容安全性风险,发现1个网页敏感词;(监控总页面数:25)。[告警时间:2018-03-26 18:41:29\\n发件单位:网神信息技术(北京)股份有限公司\\t所属账户:admin]\",\r\n" + 
//		 		"            \"站点id\":\"819\",\r\n" + 
//		 		"            \"告警id\":\"75536\"\r\n" + 
//		 		"        }\r\n" + 
//		 		"     ]\r\n" + 
//		 		"}";

 

fastjson解析 拿到数据 循环解析列表对象 适合大批量数据解析 

 

	com.alibaba.fastjson.JSONObject jsonObject = JSON.parseObject(json_2);
		com.alibaba.fastjson.JSONArray value =  jsonObject.getJSONArray("告警列表");
			for (int i = 0; i < value.size(); i++) {
				com.alibaba.fastjson.JSONObject listValue=(com.alibaba.fastjson.JSONObject) value.get(i);
                        }

 

 

json原生解析 适合少量数据解析

 

 

/		//获取对象
		JSONObject jsonObject_2 = JSONObject.fromObject(json_2);
//		//获取数组value
		JSONArray value = jsonObject_2.getJSONArray("告警列表");
		for (int i = 0; i < value.size(); i++) {
			JSONObject listValue = value.getJSONObject(i);

JsonArray  json数组解析

// 一个未转化的字符串
String str = "[{name:'a',value:'aa'},{name:'b',value:'bb'},{name:'c',value:'cc'},{name:'d',value:'dd'}]" ; 
 // 首先把字符串转成 JSONArray  对象
JSONArray json = JSONArray.fromObject(str );
if(json.size()>0){
  for(int i=0;i<json.size();i++){
 // 遍历 jsonarray 数组,把每一个对象转成 json 对象
JSONObject job = json.getJSONObject(i); 
// 得到 每个对象中的属性值
System.out.println(job.get("name")+"=") ;  
  }
}

json对象转换

        JSONObject jsonObject=JSONObject.parseObject(JSONObject.toJSONString(data);
        InsProjectLosstable insProjectLosstable=jsonObject.getObject("insProjectLosstable", InsProjectLosstable.class);   

 

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南归北隐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值