Rumah > Java > javaTutorial > Bagaimana untuk bersiri dan menyahsiri jenis generik menggunakan perpustakaan Gson di Java?

Bagaimana untuk bersiri dan menyahsiri jenis generik menggunakan perpustakaan Gson di Java?

WBOY
Lepaskan: 2023-09-10 09:17:02
ke hadapan
716 orang telah melayarinya

Bagaimana untuk bersiri dan menyahsiri jenis generik menggunakan perpustakaan Gson di Java?

Jika kelas Java ialah jenis generik dan kami menggunakannya dengan pustaka Gson untuk JSON siri dan deserialisasi. Pustaka Gson menyediakan kelas yang dipanggil com.google.gson.reflect.TypeToken untuk menyimpan jenis generik dengan mencipta kelas Gson TypeToken dan lulus jenis kelas. Menggunakan jenis ini, Gson dapat mengetahui kelas yang diluluskan dalam kelas generik.

Syntax

public class TypeToken<T> extends java.lang.Object
Salin selepas log masuk

Contoh

import java.lang.reflect.Type;
import java.util.*;
import com.google.gson.*;
import com.google.gson.reflect.*;
public class GenericTypesJSONTest {
   public static void main(String[] args) {
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      List<String> list = Arrays.asList("INDIA", "AUSTRALIA", "ENGLAND", "SOUTH AFRICA");
      String jsonStr = gson.toJson(list);
      System.out.println(jsonStr);
      Type listType = new TypeToken<List<String>>() {}.getType();
      list = gson.fromJson(jsonStr, listType);
      System.out.println(list);
   }
}
Salin selepas log masuk

输出

[
   "INDIA",
   "AUSTRALIA",
   "ENGLAND",
   "SOUTH AFRICA"
]
[INDIA, AUSTRALIA, ENGLAND, SOUTH AFRICA]
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk bersiri dan menyahsiri jenis generik menggunakan perpustakaan Gson di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan