json和jsonNode有什么区别吗?举个例子吧

json和jsonNode有什么区别吗?举个例子吧,一直弄不清楚这俩有什么不同

json是一个字符串,jsonNode是一个对象!
可以将json转换成jsonNode,jsonNode中都是键值对形式,可以根据Key取出对应的值!

JsonNode 和 json 互转

 import java.io.IOException;  
import java.util.Iterator;  
import com.fasterxml.jackson.core.JsonParseException;  
import com.fasterxml.jackson.databind.JsonMappingException;  
import com.fasterxml.jackson.databind.JsonNode;  
import com.fasterxml.jackson.databind.ObjectMapper;  

public class JacksonTest {  

    public static void main(String[] args) throws JsonParseException, JsonMappingException, IOException {  
        String json = "{\"username\":\"zhangsan\",\"性别\":\"男\",\"company\":{\"companyName\":\"中华\",\"address\":\"北京\"},\"cars\":[\"奔驰\",\"宝马\"]}";  
        ObjectMapper mapper = new ObjectMapper();  
        //JSON ----> JsonNode  
        JsonNode rootNode = mapper.readTree(json);    
        Iterator<String> keys = rootNode.fieldNames();     
        while(keys.hasNext()){    
            String fieldName = keys.next();    
            System.out.println(fieldName + ": " + rootNode.path(fieldName).toString());    
        }  
        //JsonNode ----> JSON  
        System.out.println(mapper.writeValueAsString(rootNode));  
    }  

}  

json相当于list集合 jsonNode相当于map集合