Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách chuyển đổi List thành JSON Array dùng thư viện Jackson trong Java

Class ObjectMapper là trung tâm của Jackson API, cung cấp writeValueAsString() để serialize Java object thành JSON string.

Cú pháp

public String writeValueAsString(Object value) throws JsonProcessingException

Ví dụ minh họa

import java.util.*;
import com.fasterxml.jackson.databind.*;

public class ListToJsonArray {
    public static void main(String args[]) {
        List<String> list = new ArrayList<>();
        list.add("JAVA");
        list.add("PYTHON");
        list.add("SCALA");
        list.add(".NET");
        list.add("TESTING");
        
        ObjectMapper objectMapper = new ObjectMapper();
        try {
            // Pretty print để JSON dễ đọc
            String json = objectMapper.writerWithDefaultPrettyPrinter()
                                      .writeValueAsString(list);
            System.out.println(json);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Kết quả

[
  "JAVA",
  "PYTHON",
  "SCALA",
  ".NET",
  "TESTING"
]

Các tùy chọn hữu ích

  • writerWithDefaultPrettyPrinter(): Format JSON đẹp (indent, newline).
  • writeValueAsString(): Trả về JSON string compact (1 dòng).
  • writeValue(File, Object): Ghi trực tiếp ra file.

Dependency Maven:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.15.0</version>
</dependency>

Jackson tự động xử lý List, Set, Map, array, POJO... thành JSON tương ứng.