Q
如何使用傑克遜
73
A
回答
118
我終於明白了:
ObjectMapper objectMapper = new ObjectMapper();
TypeFactory typeFactory = objectMapper.getTypeFactory();
List<SomeClass> someClassList = objectMapper.readValue(jsonString, typeFactory.constructCollectionType(List.class, SomeClass.class));
68
對方回答是正確的,但爲了完整性,這裏有其他的方法:
List<SomeClass> list = mapper.readValue(jsonString, new TypeReference<List<SomeClass>>() { });
SomeClass[] array = mapper.readValue(jsonString, SomeClass[].class);
3
完整的例子使用數組。 替換 「constructArrayType()」,由 「constructCollectionType()」 或其它任何你需要的類型。
import java.io.IOException;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.type.TypeFactory;
public class Sorting {
private String property;
private String direction;
public Sorting() {
}
public Sorting(String property, String direction) {
this.property = property;
this.direction = direction;
}
public String getProperty() {
return property;
}
public void setProperty(String property) {
this.property = property;
}
public String getDirection() {
return direction;
}
public void setDirection(String direction) {
this.direction = direction;
}
public static void main(String[] args) throws JsonParseException, IOException {
final String json = "[{\"property\":\"title1\", \"direction\":\"ASC\"}, {\"property\":\"title2\", \"direction\":\"DESC\"}]";
ObjectMapper mapper = new ObjectMapper();
Sorting[] sortings = mapper.readValue(json, TypeFactory.defaultInstance().constructArrayType(Sorting.class));
System.out.println(sortings);
}
}
相關問題
- 1. 如何使用傑克遜
- 2. 如何使用傑克遜
- 3. 使用傑克遜
- 4. 使用傑克遜
- 5. 使用傑克遜
- 6. 使用傑克遜
- 7. 使用傑克遜
- 8. 傑克遜2.0傑克遜1.x的
- 9. 如何使用傑克遜泛型
- 10. 如何使用傑克遜得到JsonProcessingException
- 11. 如何使用傑克遜映射
- 12. 如何使用傑克遜庫
- 13. 無法使用傑克遜
- 14. 閱讀使用傑克遜
- 15. 使用傑克遜的java
- 16. 同時使用傑克遜
- 17. 使用傑克遜ObjectWriter
- 18. 傑克遜不使用setter
- 19. 無法使用傑克遜
- 20. 如何與傑克遜
- 21. 如何不傑克遜
- 22. 如何與傑克遜
- 23. 傑克遜
- 24. 傑克遜Deserialising:com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException:
- 25. 與傑克遜
- 26. 與傑克遜
- 27. 與傑克遜
- 28. 傑克遜UnrecognizedPropertyException
- 29. 與傑克遜
- 30. 與傑克遜
我有類似的情況,但決定將它解序列化爲JSONArray對象,而不是將它轉換爲類,因爲它將避免將來出現類序列化問題。我有什麼好處嗎? – Arun