找到关于 JSON 的211 篇文章

JSON 和 XML 的区别

Mahesh Parahar
更新于 2020年2月24日 08:08:04

296 次浏览

JSON 和 XML 都是编程领域最流行的数据传输资源。由于它们各自重要的特性和功能,这两种资源在全球范围内被广泛使用。根据它们的特性,以下是 JSON 和 XML 的重要区别:序号|要点|JSON|XML|---|----|----|----|1|缩写|JSON 代表 JavaScript 对象表示法。而 XML 代表可扩展标记语言。|2|类型|JSON 格式是数据可交换的。而 XML 格式是标记语言。|3|基于|JSON 源自 JavaScript 语言,它具有以对象表示方式表示数据的功能。而 XML 源自 SGML 并使用标签结构... 阅读更多

正确捕获 JSON.parse 中的异常

Ayush Gupta
更新于 2019年12月2日 06:17:05

4K+ 次浏览

捕获无效 JSON 解析错误的最佳方法是将对 JSON.parse() 的调用放入 try/catch 块中。示例函数 parseJSONSafely(str) {    try {       return JSON.parse(str);    }    catch (e) {       console.err(e);       // 根据用例返回默认对象或 null。       return {}    }}

如何向服务器发送和接收 JSON 数据

Ayush Gupta
更新于 2019年11月27日 10:20:22

3K+ 次浏览

JavaScript 可以向服务器发送网络请求并加载 JSON。JS 使用称为 AJAX 的方法来实现这一点。AJAX 代表异步 JavaScript 和 XML。JS 有一个 API,fetch,用于向服务器获取(接收)和发布(发送)信息。您可以使用 fetch 以以下方式获取 JSON 数据:示例const URL = 'https://jsonplaceholder.typicode.com/todos/1' // 向服务器发送不带任何数据的 GET 请求 fetch(URL, {method: "GET"}) // 从原始响应中获取 JSON 数据    .then(res => res.json()) // 打印结果    .then(console.log)输出这将给出以下输出:{    "userId": 1,    "id": 1,    "title": "delectus ... 阅读更多

在 Java 中使用 Gson 如何使用 @SerializedName 注解?

raja
更新于 2020年7月9日 08:17:53

7K+ 次浏览

可以使用 @SerializedName 注解来使用不同的名称序列化字段,而不是实际的字段名称。我们可以将预期的序列化名称作为注解属性提供,Gson 可以确保使用提供的名称读取或写入字段。语法@Retention(value=RUNTIME) @Target(value={FIELD, METHOD}) public @interface SerializedName示例import com.google.gson.*; import com.google.gson.annotations.*; public class SerializedNameTest {    public static void main(String args[]) {       Gson gson = new GsonBuilder().setPrettyPrinting().create();       Person person = new Person(115, "Raja Ramesh", "Hyderabad");       String jsonStr = gson.toJson(person);       System.out.println(jsonStr);    } } // Person 类 class ... 阅读更多

如何在 Java 中使用 Gson 实现自定义 JsonAdapter?

raja
更新于 2020年7月9日 08:15:08

2K+ 次浏览

可以使用 @JsonAdapter 注解在字段或类级别指定 Gson。TypeAdapter 类可用于将 Java 对象转换为 JSON 和从 JSON 转换。默认情况下,Gson 库使用内置类型适配器将应用程序类转换为 JSON,但我们可以通过提供自定义类型适配器来覆盖它。语法@Retention(value=RUNTIME) @Target(value={TYPE, FIELD}) public @interface JsonAdapter示例import java.io.IOException; import com.google.gson.Gson; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; public class JsonAdapterTest {    public static void main(String[] args) {       Gson gson = new Gson();       System.out.println(gson.toJson(new Customer()));    } } // Customer 类 class Customer { ... 阅读更多

如何在 Java 中使用 Jackson API 将 JsonNode 转换为 ArrayNode?

raja
更新于 2020年7月9日 07:59:35

15K+ 次浏览

JsonNode 是所有构成 JSON 树模型的 JSON 节点的基类,而 ArrayNode 是表示从 JSON 内容映射的数组的节点类。我们可以通过将 ArrayNode 类型转换为使用 ObjectMapper 类的 readTree() 方法和 get() 方法(用于访问数组节点指定元素的值)来检索值,从而将 JsonNode 转换为 ArrayNode。语法public JsonNode readTree(String content) throws IOException, com.fasterxml.jackson.core.JsonProcessingException示例import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.node.ArrayNode; import com.fasterxml.jackson.core.JsonProcessingException; public class JSonNodeToArrayNodeTest {    public static void main(String args[]) throws JsonProcessingException {       String jsonStr = "{\"Technologies\" : [\"Java\", ... 阅读更多

如何在 Java 中使用 Jackson 搜索 JSON 文件中的值?

raja
更新于 2020年7月9日 07:52:12

3K+ 次浏览

com.fasterxml.jackson.databind.node.ObjectNode 类可用于映射 JSON 对象结构中的 JSON 内容。我们可以使用 ObjectNode 类的 get() 方法搜索 JSON 文件中的特定值,此方法用于访问对象节点指定字段的值。语法public JsonNode get(String fieldName)示例import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ObjectNode; public class ObjectNodeTest {    public static void main(String args[]) throws Exception {       String jsonString = "{\"Id\":101, \"name\":\"Raja Ramesh\", \"address\":\"Madhapur\"}";       ObjectMapper mapper = new ObjectMapper();       ObjectNode node = mapper.readValue(jsonString, ObjectNode.class);       if(node.has("name")) {       ... 阅读更多

何时在 Java 中使用 Jackson 的 @ConstructorProperties 注解?

raja
更新于 2020年7月9日 07:19:56

2K+ 次浏览

@ConstructorProperties 注解来自 java.beans 包,用于通过带注解的构造函数将 JSON 反序列化为 java 对象。此注解从 Jackson 2.7 版本开始支持。此注解的工作方式非常简单,与其在构造函数中注释每个参数,不如为每个构造函数参数提供一个包含属性名称的数组。语法@Documented @Target(value=CONSTRUCTOR) @Retention(value=RUNTIME) public @interface ConstructorProperties示例import com.fasterxml.jackson.databind.ObjectMapper; import java.beans.ConstructorProperties; public class ConstructorPropertiesAnnotationTest {    public static void main(String args[]) throws Exception {       ObjectMapper mapper = new ObjectMapper();       Employee emp = new Employee(115, "Raja");       String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(emp);   ... 阅读更多

如何在 Java 中使用 Gson 向 JSON 字符串添加/插入附加属性?

raja
更新于 2020年2月19日 10:28:54

8K+ 次浏览

com.google.gson.JSonElement 类表示 Json 的一个元素。我们可以使用 Gson 类的 toJsonTree() 方法将对象的表示序列化为 JsonElements 树。我们可以使用 JSonElement 的 getAsJsonObject() 方法向 JSON 字符串添加/插入额外的属性。此方法返回将元素作为 JsonObject 获取。语法public JsonObject getAsJsonObject()示例import com.google.gson.*; public class AddPropertyGsonTest { public static void main(String[] args) { Gson gson = new GsonBuilder().setPrettyPrinting().create();// 格式化打印 JSON Student student = new Student("Adithya"); String jsonStr = gson.toJson(student, Student.class); System.out.println("JSON 字符串: " + jsonStr); ... 阅读更多

在 Java 中使用 @JsonUnwrapped 注解的重要性?

raja
更新于 2020年7月9日 06:43:52

613 次浏览

@JsonUnwrapped 注解可用于在序列化和反序列化过程中解包值。它有助于将组合类的值呈现为属于父类。语法@Target(value={ANNOTATION_TYPE, FIELD, METHOD, PARAMETER}) @Retention(value=RUNTIME) public @interface JsonUnwrapped示例import com.fasterxml.jackson.annotation.JsonUnwrapped; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.core.JsonProcessingException; public class JsonUnwrappedAnnotationTest { public static void main(String args[]) throws JsonProcessingException { ObjectMapper mapper = new ObjectMapper(); String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(new Employee()); System.out.println(jsonString); } } class Employee { public int empId = 110; public String empName = "Raja Ramesh"; @JsonUnwrapped ... 阅读更多

广告