如何使用 jackson 库将 json 文件读入 java?

How to read json file into java with jackson library?

我想用 java jackson 库阅读这个简单的 JSON 文件(我是 JSON 的新手)。

你能告诉我我做错了什么吗?我错误地创建了 class 或 JSON 对象,或者这种将 JSON 对象转换为 Java 的方法是错误的, 谢谢

Edit now i get set of exception like this

这就是 JSON 文件存储的内容

 {
      "id": 15,
      "name": "Steve",
      "Datax": {
        "veek": "vect",
        "seev": "vecs"
      }
    }

我有三个 classes

这是一个 Cevan:

public class Cevan {
    private int id;
    private String name;
    private Datax data;

    public Datax getData() {
        return data;
    }

    public void setData(Datax data) {
        this.data = data;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getId() {
        return id;
    }
}

和 Datax:

public class Datax {
    private String veek;
    private String seev;

    public String getSeev() {
        return seev;
    }

    public String getVeek() {
        return veek;
    }

    public void setSeev(String seev) {
        this.seev = seev;
    }

    public void setVeek(String veek) {
        this.veek = veek;
    }
}

和Class主要:

     public class Main {
    public static void main(String[] args) throws IOException {
        ObjectMapper mapper=new ObjectMapper();
        InputStream is= Cevan.class.getClassLoader().getResourceAsStream("json2.json");
        Cevan testObj = mapper.readValue(is, Cevan.class);


    }
}

这就像我的项目看起来

将您的 resourseStreamReader

更改为
InputStream is=Cevan.class.getResourceAsStream("json2.json");

至:

InputStream is = this.getClassLoader().getResourceAsStream("json2.json");

并确保您的 json2.jsonclasspath

中是什么

最好将日志文件附加为文本而不是图像。

问题应该出在json文件中。

根据您的 java 类,json 文件应如下所示:

 {
  "id": 15,
  "name": "Steve",
  "data": {
    "veek": "vect",
    "seev": "vecs"
  }
}

注意对象属性从“Datax”更改为“data”。