Jackson 是一款流行的 Java 序列化庫,它可以將 Java 對象轉換為 JSON 格式或反向轉換,即從 JSON 格式反序列化為 Java 對象。
Jackson 提供了強大的泛型解析功能,可以很方便地解析各種復雜類型的 JSON 字符串,并將其轉換為對應的 Java 對象。
public class User<T> {
private String name;
private T data;
// 省略 getter 和 setter 方法
}
String jsonStr = "{\"name\":\"John\",\"data\":{\"age\":25,\"gender\":\"male\"}}";
ObjectMapper mapper = new ObjectMapper();
TypeReference<User<Map<String, Object>>> typeReference = new TypeReference<User<Map<String, Object>>>() {};
User<Map<String, Object>> user = mapper.readValue(jsonStr, typeReference);
在上面的代碼中,我們定義了一個泛型的 User 類,其中 data 屬性是泛型類型 T,這個 T 可以是任意類型,比如 Map<String, Object>。
使用 TypeReference 可以很方便地解析這種復雜類型的 JSON 字符串。
總的來說,Jackson 的泛型解析功能非常強大,能夠很好地支持各種復雜類型的 JSON 字符串解析,并將其轉換為對應的 Java 對象。
上一篇vue忘了加音樂