<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # Jackson2 – 將 Java 對象轉換為 JSON,并將 JSON 字符串轉換為對象 > 原文: [https://howtodoinjava.com/jackson/jackson-2-convert-json-to-from-java-object/](https://howtodoinjava.com/jackson/jackson-2-convert-json-to-from-java-object/) 在本教程中,我們將學習使用 [**Jackson2**](https://github.com/FasterXML/jackson) 庫將 **JSON 轉換為 Java 對象** – 和**將 Java 對象轉換為 JSON**。 ```java Table of Contents Jackson2 maven dependency Convert Java object to JSON Convert JSON to Java object ``` ## 1.Jackson2 Maven 依賴 要將 Jackson2 庫包含在您的項目中,請在`pom.xml`中包含以下依賴項。 ```java <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.6.4</version> </dependency> ``` 您可以從 [**maven 站點**](https://mvnrepository.com/artifact/com.fasterxml.jackson.core)找到可下載的 jar 文件。 ## 2.將 Java 對象轉換為 JSON 的示例 在簡單的 pojo 對象之間進行轉換時,Jackson 非常直接。 通常只涉及兩個步驟, * 創建`com.fasterxml.jackson.databind.ObjectMapper`的實例 * 使用`objectMapper.writeValueAsString()`方法將 pojo 轉換為 JSON ```java //Simple POJO Employee emp = new Employee(1, "Lokesh Gupta", 34, "India"); //Object mapper instance ObjectMapper mapper = new ObjectMapper(); //Convert POJO to JSON String json = mapper.writeValueAsString(emp); ``` #### 2.1 將 Java 對象轉換為 JSON 的 Java 程序 ```java package com.howtodoinjava.jackson2.example; import java.io.IOException; import com.fasterxml.jackson.core.JsonGenerationException; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.howtodoinjava.jackson2.example.pojo.Employee; public class FromJavaPojoToJSON { public static void main(String[] args) { Employee emp = new Employee(1, "Lokesh Gupta", 34, "India"); ObjectMapper mapper = new ObjectMapper(); try { String json = mapper.writeValueAsString(emp); System.out.println(json); //Use pretty print for printing the output String beutifulJson = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(emp); System.out.println(beutifulJson); } catch (JsonGenerationException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } ``` ```java Output: {"id":1,"name":"Lokesh Gupta","age":34,"location":"India"} { "id" : 1, "name" : "Lokesh Gupta", "age" : 34, "location" : "India" } ``` 這里使用的 POJO 對象是: ```java package com.howtodoinjava.jackson2.example.pojo; public class Employee { private Integer id; private String name; private Integer age; private String location; public Employee(Integer id, String name, Integer age, String location) { super(); this.id = id; this.name = name; this.age = age; this.location = location; } //Setters and Getters will be added here @Override public String toString() { return "Employee [id=" + id + ", name=" + name + ", age=" + age + ", location=" + location + "]"; } } ``` ## 3.將 JSON 轉換為 Java 對象的示例 就像上面的示例一樣,從 JSON 到 POJO 的轉換也僅涉及兩個步驟, * 創建`com.fasterxml.jackson.databind.ObjectMapper`的實例 * 使用`objectMapper.readValue()`方法將 JSON 轉換為 POJO 例如: ```java //JSON input String json = "{\"id\":1,\"name\":\"Lokesh Gupta\",\"age\":34,\"location\":\"India\"}"; //Object mapper instance ObjectMapper mapper = new ObjectMapper(); //Convert JSON to POJO Employee emp = mapper.readValue(json, Employee.class); ``` 我們可以在 Java 中讀取 json 文件,并將其傳遞給 jackson 庫。 #### 3.1 將 JSON 轉換為 Java 對象的 Java 程序 ```java package com.howtodoinjava.jackson2.example; import java.io.IOException; import com.fasterxml.jackson.core.JsonGenerationException; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.howtodoinjava.jackson2.example.pojo.Employee; public class FromJSONToPOJO { public static void main(String[] args) { String json = "{\"id\":1,\"name\":\"Lokesh Gupta\",\"age\":34,\"location\":\"India\"}"; ObjectMapper mapper = new ObjectMapper(); try { Employee emp = mapper.readValue(json, Employee.class); System.out.println(emp); } catch (JsonGenerationException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } ``` 程序輸出。 ```java Employee [id=1, name=Lokesh Gupta, age=34, location=India] ``` 請不要忘記在 POJO 類中添加默認的構造器,否則會出現此錯誤: ```java com.fasterxml.jackson.databind.JsonMappingException: No suitable constructor found for type [simple type, class com.howtodoinjava.jackson2.example.pojo.Employee]: can not instantiate from JSON object (missing default constructor or creator, or perhaps need to add/enable type information?) at [Source: {"id":1,"name":"Lokesh Gupta","age":34,"location":"India"}; line: 1, column: 2] at com.fasterxml.jackson.databind.JsonMappingException.from(JsonMappingException.java:148) at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1106) at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:296) at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:133) at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3736) at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2726) at com.howtodoinjava.jackson2.example.FromJSONToPOJO.main(FromJSONToPOJO.java:18) ``` 以上就是使用 Jackson2 庫將 Java 對象轉換為 JSON 并將 JSON 字符串轉換為 Java 對象的所有示例。 讓我知道您是否對如何將 json 對象轉換為 java 對象有任何疑問。 學習愉快!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看