獲取JSON格式的字符串各個屬性對應的值 FastJson對於JSON格式字符串、JSON對象及JavaBean之間的相互轉換

{"lastrdtime":1515998187379,"creditbalance":"$5.00","contactmode":"0100000003","consname":"100000030060","consno":"100000030060","consaddr":"北京市海淀區中關村","lastreading":"125.00"}

如今有上面JSON格式的字符串, 如何獲取consno對應的值100000030060?html

==方式一:Google的Gson.================================================java

1.基於maven,導入谷歌的Gson包:json

<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.2</version>
</dependency>

2.建立Gson對象, 將JSON字符串轉爲Map對象, Map取值就哦了.(轉成自定義的javaBean, 經過getXxx()取值也能夠)maven

Gson gson = new Gson();
Map map = gson.fromJson(stringEntity, Map.class);
System.out.println(map.get("consno"));

結果:ide

100000030060

==方式二:阿里的FastJson.================================================post

1.基於maven, 導入阿里的FastJson包:google

<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.41</version>
</dependency>

2.調用JSON類的parseObject方法, 將字符串轉爲JSONObject:url

JSONObject jsonObject = JSON.parseObject(jsonEntity);
System.out.println(jsonObject.get("consno"));

結果:spa

100000030060

 

附:code

package com.test.com.pers.others;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.gson.Gson;

import java.util.Map;

/**
 * Created by yadongliang on 2018/1/15 0015.
 */
public class GetJsonParameter {
    public static void main(String[] args) {
        String stringEntity = "{'consno':'100000030060','consaddr':'北京市海淀區中關村'}";
        /**
         * 方式一:Google的Gson.
         */
        Gson gson = new Gson();
        Map map = gson.fromJson(stringEntity, Map.class);
        System.out.println(map.get("consno"));
        System.out.println(map.get("consaddr"));

        /**
         * 方式二:阿里的FastJson.
         */
        JSONObject jsonObject = JSON.parseObject(stringEntity);
        System.out.println(jsonObject.get("consno"));
        System.out.println(jsonObject.get("consaddr"));
        System.out.println(jsonObject.getString("consno"));
        System.out.println(jsonObject.getString("consaddr"));

    }
}
View Code

 

另, 可參考另外一篇:FastJson對於JSON格式字符串、JSON對象及JavaBean之間的相互轉換

這篇講的更細緻...

相關文章
相關標籤/搜索