package com.zving; import org.codehaus.jackson.map.ObjectMapper; /** * 學習ObjectMapper類 * * @author Clover */ public class JacksonTester { public static void main(String[] args) { ObjectMapper mapper = new ObjectMapper();
//指定遇到date按照這種格式轉換
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
mapper.setDateFormat(fmt);
String jsonString = ""; stringToStudent(mapper, jsonString); studentToString(mapper, jsonString); stringToStudentList(mapper, jsonString); } /** * 字符串轉實體類 * * @param mapper * @param jsonString */ public static void stringToStudent(ObjectMapper mapper, String jsonString) { jsonString = "{\"id\":1001,\"name\":\"Tom\",\"info\":\"一個小男孩\"}"; try { Student student = mapper.readValue(jsonString, Student.class); System.out.println(student); } catch (Exception e) { e.printStackTrace(); } } /** * 實體類轉字符串 * * @param mapper * @param jsonString */ public static void studentToString(ObjectMapper mapper, String jsonString) { Student student = new Student(); student.setId(1002); student.setName("李四"); student.setInfo("一個小女孩"); try { jsonString = mapper.writeValueAsString(student); System.out.println(jsonString); } catch (Exception e) { e.printStackTrace(); } } /** * 字符串轉 List<實體類> * * @param mapper * @param jsonString */ public static void stringToStudentList(ObjectMapper mapper, String jsonString) { jsonString = "[{\"id\":1001,\"name\":\"Tom\",\"info\":\"一個小男孩\"},{\"id\":1002,\"name\":\"Jane\",\"info\":\"一個小女孩\"}]"; try { Student[] stu = mapper.readValue(jsonString, Student[].class); for (Student student : stu) { System.out.println(student); } String ss = mapper.writeValueAsString(stu); System.out.println(ss); } catch (Exception e) { e.printStackTrace(); } } }