使用 Jackson Object Mapper
Pojo 模型
public class Model {
    private String firstName;
    private String lastName;
    private int age;
    /* Getters and setters not shown for brevity */        
}
示例:String to Object
Model outputObject = objectMapper.readValue(
     "{\"firstName\":\"John\",\"lastName\":\"Doe\",\"age\":23}",
     Model.class);
System.out.println(outputObject.getFirstName());
//result: John
示例:物件到字串
String jsonString = objectMapper.writeValueAsString(inputObject));
//result: {"firstName":"John","lastName":"Doe","age":23}
細節
需要匯入語句:
import com.fasterxml.jackson.databind.ObjectMapper;
ObjectMapper 例項
//creating one
ObjectMapper objectMapper = new ObjectMapper();
- ObjectMapper是執行緒安全的
- 建議:擁有一個共享的靜態例項
反序列化:
<T> T readValue(String content, Class<T> valueType)  
- 需要指定 valueType- 返回將是這種型別
- 丟擲
- IOException- 在低階 I / O 問題的情況下
- JsonParseException- 如果基礎輸入包含無效內容
- JsonMappingException- 如果輸入的 JSON 結構與物件結構不匹配
 
用法示例(jsonString 是輸入字串):
Model fromJson = objectMapper.readValue(jsonString, Model.class);
序列化方法:
String writeValueAsString(Object value)
- 丟擲
- JsonProcessingException如果出錯
- 注意:在 2.1 版之前,throws 子句包含 IOException; 2.1 刪除它。