2017-07-19 59 views
-2

如何使用jackson將以下json轉換爲pojo類。傑克遜地圖json鍵值對數組pojo

{ 
"company": [{ 
    "employee": { 
     "address": { 
      "email": "[email protected]" 
     }, 
     "info": { 
      "role": "admin", 
      "name": "abc" 
     } 
    } 
}, 
{ 
    "employee": { 
     "address": { 
      "email": "[email protected]" 
     }, 
     "info": { 
      "role": "developer", 
      "name": "xyz" 
     } 
    } 
}] 
} 

樣品Java代碼(它將包含getter和setter)

public class Company{ 
@JsonProperty("employee") 
List<Employee> employee; 

} 
+0

提供了幫助您完成此信息太少。至少你需要展示'Employee'的結構,並且你還應該解釋你所遇到的問題。給出一個例子,說明你的代碼現在看起來像什麼,你得到的任何錯誤以及運行代碼的預期結果是什麼。 – Raniz

+0

你到目前爲止嘗試過什麼?你甚至嘗試谷歌搜索有很多在線json pojo轉換器? http://www.jsonschema2pojo.org/ –

回答

0

我可以幫你在這。

你必須創建相當於這個傑森權的pojo類。在這裏我們去

的POJO類相當於你的JSON作爲下面提到

Employee.java

public class Employee 
{ 
    private Address address; 

    private Info info; 

    public Address getAddress() 
    { 
     return address; 
    } 

    public void setAddress (Address address) 
    { 
     this.address = address; 
    } 

    public Info getInfo() 
    { 
     return info; 
    } 

    public void setInfo (Info info) 
    { 
     this.info = info; 
    } 

    @Override 
    public String toString() 
    { 
     return "ClassPojo [address = "+address+", info = "+info+"]"; 
    } 
} 

Address.java

public class Address 
{ 
    private String email; 

    public String getEmail() 
    { 
     return email; 
    } 

    public void setEmail (String email) 
    { 
     this.email = email; 
    } 

    @Override 
    public String toString() 
    { 
     return "ClassPojo [email = "+email+"]"; 
    } 
} 

Company.java

public class Company 
{ 
    private Employee employee; 

    public Employee getEmployee() 
    { 
     return employee; 
    } 

    public void setEmployee (Employee employee) 
    { 
     this.employee = employee; 
    } 

    @Override 
    public String toString() 
    { 
     return "ClassPojo [employee = "+employee+"]"; 
    } 
} 

Info.java

public class Info 
{ 
    private String name; 

    private String role; 

    public String getName() 
    { 
     return name; 
    } 

    public void setName (String name) 
    { 
     this.name = name; 
    } 

    public String getRole() 
    { 
     return role; 
    } 

    public void setRole (String role) 
    { 
     this.role = role; 
    } 

    @Override 
    public String toString() 
    { 
     return "ClassPojo [name = "+name+", role = "+role+"]"; 
    } 
}