Jackson 是一個非常強大的 Java 序列化庫,它可以將 Java 對象轉換為 JSON 格式,也可以將 JSON 格式轉換為 Java 對象。在實際項目中,我們常常需要將 JSON 數組轉換為 Java 數組或者 Java 集合類型,這時候 Jackson 就是我們的好幫手了。
在使用 Jackson 將 JSON 數組轉換為 Java 數組或者 Java 集合類型時,我們需要借助 ObjectMapper 類來完成。下面是一個簡單的示例代碼:
ObjectMapper mapper = new ObjectMapper(); String jsonStr = "[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Jerry\",\"age\":20}]"; User[] users = mapper.readValue(jsonStr, User[].class); List<User> userList = mapper.readValue(jsonStr, new TypeReference<List<User>>() {});
上面的代碼中,我們首先創建了一個 ObjectMapper 對象,然后定義了一個 JSON 字符串。接著我們使用 readValue() 方法將 JSON 數組轉換為 Java 數組或者 Java 集合類型。
其中,第一個參數是要轉換的 JSON 字符串,第二個參數是要轉換的 Java 類型。我們可以直接使用 Class 類型來定義 Java 數組類型,也可以使用 TypeReference 來定義 Java 集合類型。
需要注意的是,在使用 ObjectMapper 將 JSON 數組轉換為 Java 集合類型時,我們需要使用 TypeReference 來指定集合類型,否則 ObjectMapper 無法正確地解析 JSON 數組。
總之,使用 Jackson 將 JSON 數組轉換為 Java 數組或者 Java 集合類型非常方便和簡單,我們只需要掌握好 ObjectMapper 的使用方法即可。