找到關於 JSON 的211 篇文章

在 Java 中使用 Jackson API 的 @JsonRawValue 註解有什麼作用?

raja
更新於 2020-07-08 11:38:24

1K+ 次瀏覽

@JsonRawValue 註解可用於方法和欄位,以序列化宣告的欄位或屬性。例如,如果我們的 Java 類中有一個 String 欄位,則 JSON 值將用引號 (“ ”) 括起來。但是,當我們用 @JsonRawValue 註解該欄位時,Jackson 庫會省略引號。語法@Target(value={ANNOTATION_TYPE, METHOD, FIELD}) @Retention(value=RUNTIME) public @interface JsonRawValue 在下面的示例中,empAddress 欄位是一個 JSON 字串。此 JSON 字串序列化為 Employee 物件的最終 JSON 字串的一部分。示例import com.fasterxml.jackson.annotation.JsonRawValue; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.core.JsonProcessingException; public class JsonRawValueAnnotationTest { public static void main(String args[]) throws JsonProcessingException { ... 閱讀更多

如何在 Java 中使用 JSON-lib API 將 JSON 物件轉換為 bean?

raja
更新於 2020-07-08 11:34:52

3K+ 次瀏覽

JSONObject 類是名稱/值對 (無序) 的集合,其中 bean 是一個類,其成員欄位具有 setter 和 getter 方法。我們可以使用 JSONObject 類的 toBean() 方法將 JSON 物件轉換為 bean。語法public static Object toBean(JSONObject jsonObject, Class beanClass) 示例import net.sf.json.JSONObject; public class ConvertJSONObjToBeanTest { public static void main(String[] args) { mployee emp = new Employee("Sai", "Ram", 30, "Bangalore"); JSONObject jsonObj = JSONObject.fromObject(emp); System.out.println(jsonObj.toString(3)); // 格式化列印 JSON emp = (Employee)JSONObject.toBean(jsonObj, Employee.class); System.out.println(emp.toString()); } // Employee 類 public static ... 閱讀更多

Java 中 @JsonFilter 註解的重要性?

raja
更新於 2020-07-08 11:35:40

812 次瀏覽

@JsonFilter 註解用於定義自定義過濾器來序列化 Java 物件。我們需要使用 FilterProvider 類來定義過濾器並獲取實際的過濾器例項。現在透過將 FilterProvider 分配給 ObjectMapper 類來配置過濾器。語法@Target(value={ANNOTATION_TYPE, TYPE, METHOD, FIELD, PARAMETER}) @Retention(value=RUNTIME) public @interface JsonFilter 在下面的示例中,宣告為 @JsonFilter 註解的引數的 customFilter 只提取名稱並過濾掉 bean 的其他屬性。示例import com.fasterxml.jackson.annotation.JsonFilter; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ser.FilterProvider; import com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter; import com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider; public class JsonFilterAnnotationTest { public static void main(String args[]) throws JsonProcessingException { ... 閱讀更多

何時在 Java 中使用 Jackson 的 @JsonManagedReference 和 @JsonBackReference 註解?

raja
更新於 2020-07-08 11:36:22

4K+ 次瀏覽

@JsonManagedReference@JsonBackReference 註解可用於以雙向方式建立 JSON 結構。@JsonManagedReference 註解是正向引用,在序列化過程中包含在內,而 @JsonBackReference 註解是反向引用,在序列化過程中被省略。在下面的示例中,我們可以實現 @JsonManagedReference@JsonBackReference 註解。示例import java.util.*; import com.fasterxml.jackson.annotation.JsonManagedReference; import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.core.JsonProcessingException; public class ManagedReferenceBackReferenceTest { public static void main(String args[]) throws JsonProcessingException { BackReferenceBeanTest testBean = new BackReferenceBeanTest(110, "Sai Chaitanya"); ManagedReferenceBeanTest bean = new ManagedReferenceBeanTest(135, "Adithya Ram", testBean); testBean.addEmployees(bean); ObjectMapper mapper = ... 閱讀更多

在 Java 中使用 Jackson 的 @JsonView 註解的重要性?

raja
更新於 2020-07-08 11:19:19

1K+ 次瀏覽

JsonView 註解可用於動態地在序列化和反序列化過程中包含/排除屬性。我們需要配置 ObjectMapper 類來包含用於使用 writerWithView() 方法從 Java 物件寫入 JSON 的檢視型別。語法@Target(value={ANNOTATION_TYPE, METHOD, FIELD}) @Retention(value=RUNTIME) public @interface JsonView 示例import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.core.JsonProcessingException; public class JsonViewAnnotationTest { public static void main(String args[]) throws JsonProcessingException { ObjectMapper objectMapper = new ObjectMapper(); String jsonString = objectMapper.writerWithView(Views.Public.class).writeValueAsString(new Person()); String jsonStringInternal = objectMapper.writerWithView(Views.Internal.class).writeValueAsString(new Person()); System.out.println(jsonString); System.out.println(jsonStringInternal); } } ... 閱讀更多

如何在 Java 中使用排除過濾器將 bean 轉換為 JSON 物件?

raja
更新於 2020-07-08 11:20:06

409 次瀏覽

JsonConfig 類可用於配置序列化過程。我們可以在序列化為 JSON 時使用 JsonConfigsetJsonPropertyFilter() 方法來設定屬性過濾器。我們需要透過重寫 PropertyFilter 介面的 apply() 方法來實現自定義 PropertyFilter 類。如果屬性將被過濾掉,則返回 true,否則返回 false。語法public void setJsonPropertyFilter(PropertyFilter jsonPropertyFilter) 示例import net.sf.json.JSONObject; import net.sf.json.JsonConfig; import net.sf.json.util.PropertyFilter; public class ConvertBeanToJsonExcludeFilterTest { public static void main(String[] args) { Student student = new Student("Sai", "Chaitanya", 20, "Hyderabad"); JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setJsonPropertyFilter(new CustomPropertyFilter()); ... 閱讀更多

如何在 Java 中使用 JSON-lib API 將 bean 轉換為不帶型別提示的 XML?

raja
更新於 2020-07-08 11:20:50

224 次瀏覽

JSON-lib 是一個 Java 庫,用於將 Java bean、對映、陣列和集合序列化和反序列化為 JSON 格式。我們可以使用 XMLSerializer 類的 setTypeHintsEnabled() 方法將 bean 轉換為不帶型別提示的 XML,此方法設定是否可以將 JSON 型別作為屬性包含在內。我們可以將 false 作為引數傳遞給此方法以停用 XML 中的型別提示。語法public void setTypeHintsEnabled(boolean typeHintsEnabled) 示例import net.sf.json.JSONObject; import net.sf.json.xml.XMLSerializer; public class ConvertBeanToXMLNoHintsTest { public static void main(String[] args) { Employee emp = new Employee("Krishna Vamsi", 115, 30, "Java"); JSONObject jsonObj = JSONObject.fromObject(emp); ... 閱讀更多

如何在 Java 中使用 JSON-lib API 將 bean 轉換為 XML?

raja
更新於 2020-07-08 11:16:03

256 次瀏覽

net.sf.json.xml.XMLSerializer 類是一個實用程式類,用於將 JSON 轉換為 XML。將 JSONObject 例項轉換為 XML 時,此類可以新增提示以轉換回 JSON。我們可以使用 XMLSerializer 類的 write() 方法將 JSON 值寫入具有 UTF-8 編碼的 XML 字串,它可以返回格式良好的 XML 文件的字串表示形式。語法public String write(JSON json) 示例import net.sf.json.JSONObject; import net.sf.json.xml.XMLSerializer; public class ConvertBeanToXMLTest { public static void main(String[] args) { Student student = new Student("Sai", "Adithya", 25, "Pune"); JSONObject jsonObj = JSONObject.fromObject(student); System.out.println(jsonObj.toString(3));// 格式化列印 JSON ... 閱讀更多

如何在 Java 中使用 JSON-lib API 將陣列轉換為 JSON 陣列?

raja
更新於 2020-02-19 07:46:28

446 次瀏覽

Java 陣列是一個物件,用於儲存多個相同型別的變數,它可以儲存基本型別和物件引用,而 JSONArray 是一個有序的值序列。其外部文字形式是用方括號括起來的字串,值之間用逗號分隔;內部形式是一個物件,具有 get() 和 opt() 方法,用於透過索引訪問值,以及 element() 方法用於新增或替換值。第一步,我們可以建立一個 Object[] 陣列,並將此引數作為引數傳遞給 JSONSerializer 類的 toJSON() 方法,並進行型別轉換以獲得 JSON 陣列。我們可以按照以下示例將 Object[] 陣列轉換為 JSONArray。閱讀更多

如何在 Java 中使用 JsonConfig 將 Bean 轉換為 JSON 物件,同時排除某些屬性?

raja
更新於 2020年7月8日 09:05:50

1K+ 次瀏覽

JsonConfig 類是一個實用程式類,用於配置序列化過程。我們可以使用 JsonConfig 類的 setExcludes() 方法將 Bean 轉換為僅包含部分屬性的 JSON 物件,並將此 JSON 配置例項作為引數傳遞給 JSONObject 的 static 方法 fromObject()。語法:public void setExcludes(String[] excludes) 在下面的示例中,我們將演示如何排除某些屬性並將 Bean 轉換為 JSON 物件。示例:import net.sf.json.JSONObject; import net.sf.json.JsonConfig; public class BeanToJsonExcludeTest {    public static void main(String[] args) {       Student student = new Student("Raja", "Ramesh", 35, "Madhapur");       JsonConfig jsonConfig = new ... 閱讀更多

廣告
© . All rights reserved.