使用 gson 将 Java 对象转换为 JSON 字符串

2022-09-03 00:09:52

我在这里找到了一些例子,它说如何将json转换为java对象,但在这里我需要将Java对象转换为GSON

我有一个Java对象,现在我想将Java对象转换为Gson。我怎样才能做到这一点,请参考我的代码。

Staff obj = new Staff();
Gson gson = new Gson();

我需要将员工对象转换为 gson 对象

这是我的员工班

public class Staff {    
    private String name;
    private int age;
    private String position;
    private BigDecimal salary;
    private List<String> skills;

我该怎么做?


答案 1

首先:没有“gson”对象。只有 JSON 数据、特定格式的字符串,Gson 工具允许您将 JSON 字符串转换为 java 对象(json 解析),并将 java 对象转换为 JSON 字符串。从那里开始,您的请求归结为:

Gson gson = new Gson();
String json = gson.toJson(someInstanceOfStaff);

除此之外,您应该获得一个很好的教程并研究这个主题,就像这里一样。


答案 2

来自 API 的示例:

 Gson gson = new Gson(); // Or use new GsonBuilder().create();
 MyType target = new MyType();
 String json = gson.toJson(target); // serializes target to Json
 MyType target2 = gson.fromJson(json, MyType.class); // deserializes json into target2

对于列表或参数化类型:

 Type listType = new TypeToken<List<String>>() {}.getType();
 List<String> target = new LinkedList<String>();
 target.add("blah");

 Gson gson = new Gson();
 String json = gson.toJson(target, listType);
 List<String> target2 = gson.fromJson(json, listType);

API 文档链接,了解更多示例


推荐