Jackson是一個(gè)用于Java平臺(tái)的流行開(kāi)源JSON解析器和生成器。它是一個(gè)快速、開(kāi)銷低、功能強(qiáng)大、易于使用的庫(kù)。使用Jackson在Java應(yīng)用程序中處理JSON變得非常簡(jiǎn)單。
在Java應(yīng)用程序中使用Jackson將JSON轉(zhuǎn)換為Map非常容易。實(shí)際上,Jackson中的ObjectMapper類可以使用默認(rèn)的JDK映射器將JSON轉(zhuǎn)換為Map。讓我們看看如何將JSON轉(zhuǎn)換為Map。
//導(dǎo)入Jackson的ObjectMapper類,以轉(zhuǎn)換JSON為Map
import com.fasterxml.jackson.databind.ObjectMapper;
public class JacksonDemo {
public static void main(String[] args) throws Exception {
//構(gòu)造JSON字符串
String jsonString = "{ \"name\":\"Apple\", \"price\":1.0, \"quantity\":12 }";
//初始化ObjectMapper類
ObjectMapper mapper = new ObjectMapper();
//使用ObjectMapper將JSON轉(zhuǎn)換為Map
Map<String, Object> map = mapper.readValue(jsonString, Map.class);
//打印Map對(duì)象
System.out.println(map);
}
}
在上面的代碼中,我們首先構(gòu)建一個(gè)JSON字符串來(lái)演示如何將它轉(zhuǎn)換為Map。然后我們使用ObjectMapper類將JSON轉(zhuǎn)換為Map。這里我們使用了readValue()方法,該方法將JSON字符串作為第一個(gè)參數(shù)和Map.class作為第二個(gè)參數(shù)。這告訴ObjectMapper將JSON解析為Map對(duì)象。
最后,我們打印出Map對(duì)象,我們應(yīng)該得到與JSON字符串中相同的名稱和值。