2017-10-04 14 views
-1

次のJson ListをJava Object ListにマップするためにJacksonを使用しています。JsonListをJava Object Listに効率的にマッピングするにはどうすればいいですか?

以下はリストです。

String UserListString="[{\"UID\":1,\"Username\":\"111\",\"ID\":\"rey\",\"Name\":\"User01\",\"Date\":\"12-10-2016 10:07\",\"ItemList\":[{\"Item\":9,\"Code\":\"dggd\"}]},{\"UID\":2,\"Username\":\"222\",\"ID\":\"dsse\",\"Name\":\"User02\",\"Date\":\"13-10-2016 02:08\",\"ItemList\":[{\"Item\":4,\"Code\":\"res\"}]},{\"UID\":3,\"Username\":\"333\",\"ID\":\"wee\",\"Name\":\"User03\",\"Date\":\"13-10-2016 02:09\",\"ItemList\":[{\"Item\":1,\"Code\":\"ret\"}]"; 

私は以下のことで、これを解析:

ObjectMapper objectMapper = new ObjectMapper(); 
ArrayList<Users> list =new ArrayList<Users>(); 
list = objectMapper.readValue(UserListString,TypeFactory.defaultInstance().constructCollectionType((Class<? extends Collection>) List.class, Users.class)); 

私のユーザークラスは以下の通りです:

public class Users { 

    @JsonProperty("UID") 
    private String UID; 

    @JsonProperty("Username") 
    private String Username; 


    @JsonProperty("ID") 
    private String ID; 

    @JsonProperty("Name") 
    private String Name; 

    @JsonProperty("Date") 
    private String Date; 



    @JsonProperty("ItemList") 
    private ArrayList<Item>ItemList; 

..///getters and setters 
} 

私Itemクラス

public class Item { 
    private String Item; 
    private String Code; 
    public String getItem() { 
     return Item; 
    } 
    public void setItem(String item) { 
     Item = item; 
    } 
    public String getCode() { 
     return Code; 
    } 
    public void setCode(String code) { 
     Code = code; 
    } 



} 

私は受信エラーが

のようなものです
java.lang.IllegalArgumentException: Can not create TypeBindings for class java.awt.List with 1 type parameter: class expects 0 

助けてください。

import java.util.List; 

にあなたが現在そこに持っている1がAbstract Window Toolkit、ないのJavaコレクションインタフェースに関連

import java.awt.List; 

...:最低でも

答えて

2

、あなたがこのインポートを変更する必要があります。

+0

ええ、愚かな間違い。ありがとう – Ricky

関連する問題