找到 211 篇文章 关于 JSON

JSON 和 XML 的区别

Mahesh Parahar
更新于 2020-02-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-02 06:17:05

4K+ 次浏览

捕获无效 JSON 解析错误的最佳方法是将对 JSON.parse() 的调用放入 try/catch 块中。示例function 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-07-09 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-07-09 08:15:08

2K+ 次浏览

@JsonAdapter 注解可以在字段或类级别使用以指定 Gson。TypeAdapter 类可用于将 Java 对象转换为 JSON 和从 JSON 转换为 Java 对象。默认情况下,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-07-09 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-07-09 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-07-09 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-02-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 中使用 Jackson 的 @JsonUnwrapped 注解的重要性?

raja
更新于 2020-07-09 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   ... 阅读更多

广告