在Java中,我們經常需要將List數據轉換為JSON格式,以便在Web應用程序或其他應用程序中使用。
import java.util.List; import com.fasterxml.jackson.databind.ObjectMapper; public class List2JSON { public static void main(String[] args) throws Exception { Listlist = Arrays.asList("apple", "banana", "orange"); ObjectMapper mapper = new ObjectMapper(); String json = mapper.writeValueAsString(list); System.out.println(json); } }
首先,我們需要導入Jackson庫的ObjectMapper類,它可以將Java對象轉換為JSON格式。接著,我們創建一個List對象,并使用ObjectMapper將其轉換為JSON字符串。
如果List中包含自定義Java對象,則需要使用Jackson庫的另一個類,稱為ObjectWriter,并指定序列化器和過濾器。
import java.util.List; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectWriter; import com.fasterxml.jackson.databind.SerializationFeature; import com.fasterxml.jackson.databind.ser.FilterProvider; import com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider; public class List2JSON { public static void main(String[] args) throws Exception { Listbooks = Arrays.asList(new Book(1, "Java Programming", "John Smith"), new Book(2, "Database Design", "Alice Green")); ObjectMapper mapper = new ObjectMapper(); FilterProvider filters = new SimpleFilterProvider().addFilter("bookFilter", SimpleBeanPropertyFilter.filterOutAllExcept("title", "author")); ObjectWriter writer = mapper.writer(filters).with(SerializationFeature.FAIL_ON_EMPTY_BEANS); String json = writer.writeValueAsString(books); System.out.println(json); } } class Book { private int id; private String title; private String author; // constructor, getters, setters }
上面的代碼演示了如何將一個包含自定義Java對象的List轉換為JSON格式,并只序列化"title"和"author"字段。這里使用了Jackson庫的FilterProvider和SimpleBeanPropertyFilter類,它們可以指定哪些屬性應該包含在JSON字符串中。
上一篇java json 入參
下一篇vue桌面程序登錄