Jackson是一個開源的Java庫,可以輕松實現Java對象和JSON之間的轉換,支持三種數據格式:JSON、XML和YAML。
使用Jackson轉換Java對象到JSON字符串的方法如下:
ObjectMapper mapper = new ObjectMapper(); String jsonString = mapper.writeValueAsString(object);
上述代碼中,ObjectMapper是Jackson的核心類,用于創建序列化和反序列化Java對象和JSON之間的映射。writeValueAsString方法將Java對象轉換為JSON字符串。
同樣地,使用Jackson將JSON字符串轉換為Java對象的方法如下:
ObjectMapper mapper = new ObjectMapper(); Object object = mapper.readValue(jsonString, Object.class);
上述代碼中,readValue方法將JSON字符串轉換為Java對象,第二個參數表示轉換后的對象類型。
Jackson還支持將JSON字符串轉換為Java集合類型:
ObjectMapper mapper = new ObjectMapper(); List<Object> list = mapper.readValue(jsonString, new TypeReference<List<Object>>() {});
上述代碼中,使用TypeReference泛型類將JSON字符串轉換為List類型的Java對象。
Jackson還支持自定義序列化和反序列化器,可以根據業務需要靈活地處理Java對象和JSON之間的映射關系。