gpt4 book ai didi

java - JSON:对象到 JsonString - JsonString 到 X.class 对象

转载 作者:行者123 更新时间:2023-11-29 06:53:13 28 4
gpt4 key购买 nike

我有一个名为 MediaList 的类,我想将这个类的值解析为 JSON 字符串并向后解析。

public class KeywordList {
private List<Keyword> keywords = new ArrayList<>();
}

这里是 JSON 字符串:

{
"keywords": [
{
"id": 12,
"name": "Thesis",
"mediaCount": 31
}, ...
]
}

我正在使用 google lib gson,但我只想使用带有 jax-rs 的标准 java 版本,因为我不想在我的项目中使用第 3 方工具。

最佳答案

不幸的是,您必须使用外部库,因为默认情况下 Java 无法执行此操作。

虽然 Java 9 可能会改变,但从这些变化来看,我还没有看到在 JSON 库中构建的东西。我听说过,但我没有在里面看到。

🌱

可以看到here Java 9 的所有新特性。

您将找到您可能需要的库以及教程 here

🌱

在它存在之前,我们拥有惊人的 Jackson图书馆:

1.1 Java对象转JSON,writeValue(...)

ObjectMapper mapper = new ObjectMapper();
Staff obj = new Staff();

//Object to JSON in file
mapper.writeValue(new File("c:\\file.json"), obj);

//Object to JSON in String
String jsonInString = mapper.writeValueAsString(obj);

1.2 JSON转Java对象,readValue(...)

ObjectMapper mapper = new ObjectMapper();
String jsonInString = "{'name' : 'mkyong'}";

//JSON from file to Object
Staff obj = mapper.readValue(new File("c:\\file.json"), Staff.class);

//JSON from URL to Object
Staff obj = mapper.readValue(new URL("http://mkyong.com/api/staff.json"), Staff.class);

//JSON from String to Object
Staff obj = mapper.readValue(jsonInString, Staff.class);

Staff 在哪里:

 import java.math.BigDecimal;    import java.util.List;
public class Staff {
private String name;
private int age;
private String position;
private BigDecimal salary;
private List<String> skills;
//getters and setters
}

完整教程here

关于java - JSON:对象到 JsonString - JsonString 到 X.class 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40913450/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com