java 类转json串,好用来存储

在Java中,将一个类实例转换为JSON字符串可以使用一些第三方库,比如GsonJacksonFastJSON等。

下面以Gson为例,展示一个简单的类转换为JSON字符串的示例:

import com.google.gson.Gson;

public class MyClass {
    private int id;
    private String name;

    public MyClass(int id, String name) {
        this.id = id;
        this.name = name;
    }

    public int getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public static void main(String[] args) {
        MyClass myClass = new MyClass(1, "example");

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

        System.out.println(json);
    }
}

在上面的示例中,我们定义了一个MyClass类,并创建了一个类实例myClass。使用Gson库将该实例转换为JSON字符串的代码如下:

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

toJson() 方法将对象序列化为JSON字符串,并将其返回给调用者。
最后,我们可以通过System.out.println()打印JSON字符串到控制台。

针对二位json串,如何解析:

好的,如果您要将 JSON 字符串转换为一个包含多个 `YourClass` 对象的列表,请使用以下代码示例:

```java
String json = "[{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}, {\"name\":\"Alice\",\"age\":25,\"city\":\"London\"}]";

Gson gson = new Gson();
Type listType = new TypeToken<List<YourClass>>() {}.getType();
List<YourClass> list = gson.fromJson(json, listType);

在这个示例中,假设 YourClass 是您的类名,它有 nameagecity 这些属性,并且您的 JSON 字符串 json 表示一个包含多个 YourClass 对象的数组。

通过使用 TypeToken 来指定 List<YourClass> 的类型,您可以使用 fromJson() 方法将 JSON 字符串转换为 List<YourClass> 对象。

请将 YourClass 替换为您实际的类名,并根据您的 JSON 字符串进行相应的修改。

```demo
    @Override
    public List<ParamItem> getLastParams(int deviceNo){
        SysDeviceParamsVo info = deviceParamsService.selectLastInfo(deviceNo);
        //System.out.println(info.getParamsCon());

        Gson gson = new Gson();
        Type listType = new TypeToken<List<ParamItem>>() {}.getType();
        List<ParamItem> list = gson.fromJson(info.getParamsCon(), listType);
        for (ParamItem item : list){
            System.out.println("item___" + item.getParamId());
        }

        return list;
    }
posted @ 2024-01-26 09:54  盘思动  阅读(65)  评论(0编辑  收藏  举报