Gson是Google公司開發(fā)的一款Java框架,用于將Java對(duì)象和JSON數(shù)據(jù)相互轉(zhuǎn)換。它支持泛型,可以輕松地將任何類型的Java對(duì)象序列化成JSON字符串。本文將介紹如何使用Gson對(duì)泛型進(jìn)行JSON序列化。
首先需要引入Gson庫,可以從Maven倉庫中獲取:
<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.7</version> </dependency>
假設(shè)有如下Java類:
public class Book { private String name; private List<String> authors; public Book(String name, List<String> authors) { this.name = name; this.authors = authors; } // getters and setters }
現(xiàn)在需要將一個(gè)泛型對(duì)象(例如List<Book>)轉(zhuǎn)換為JSON字符串??梢允褂肎son的toJson方法:
List<Book> books = new ArrayList<>(); books.add(new Book("Java編程思想", Arrays.asList("Bruce Eckel"))); books.add(new Book("Effective Java", Arrays.asList("Joshua Bloch"))); Gson gson = new Gson(); String json = gson.toJson(books);
上述代碼將List<Book>對(duì)象books轉(zhuǎn)換為JSON字符串json。JSON格式如下:
[ { "name": "Java編程思想", "authors": [ "Bruce Eckel" ] }, { "name": "Effective Java", "authors": [ "Joshua Bloch" ] } ]
注意:如果需要將JSON字符串轉(zhuǎn)換為泛型對(duì)象,可以使用fromJson方法。具體用法可以參考Gson官方文檔。