How to convert jsonString to JSONObject in Java

前端 未结 19 3244
一生所求
一生所求 2020-11-22 00:39

I have String variable called jsonString:

{\"phonetype\":\"N95\",\"cat\":\"WP\"}

Now I want to convert it into JSON Object. I

19条回答
  •  不要未来只要你来
    2020-11-22 01:35

    Codehaus Jackson - I have been this awesome API since 2012 for my RESTful webservice and JUnit tests. With their API, you can:

    (1) Convert JSON String to Java bean

    public static String beanToJSONString(Object myJavaBean) throws Exception {
        ObjectMapper jacksonObjMapper = new ObjectMapper();
        return jacksonObjMapper.writeValueAsString(myJavaBean);
    }
    

    (2) Convert JSON String to JSON object (JsonNode)

    public static JsonNode stringToJSONObject(String jsonString) throws Exception {
        ObjectMapper jacksonObjMapper = new ObjectMapper();
        return jacksonObjMapper.readTree(jsonString);
    }
    
    //Example:
    String jsonString = "{\"phonetype\":\"N95\",\"cat\":\"WP\"}";   
    JsonNode jsonNode = stringToJSONObject(jsonString);
    Assert.assertEquals("Phonetype value not legit!", "N95", jsonNode.get("phonetype").getTextValue());
    Assert.assertEquals("Cat value is tragic!", "WP", jsonNode.get("cat").getTextValue());
    

    (3) Convert Java bean to JSON String

        public static Object JSONStringToBean(Class myBeanClass, String JSONString) throws Exception {
        ObjectMapper jacksonObjMapper = new ObjectMapper();
        return jacksonObjMapper.readValue(JSONString, beanClass);
    }
    

    REFS:

    1. Codehaus Jackson

    2. JsonNode API - How to use, navigate, parse and evaluate values from a JsonNode object

    3. Tutorial - Simple tutorial how to use Jackson to convert JSON string to JsonNode

提交回复
热议问题