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.