pubic class UserInfo implements Serializable{ private String name; private int age; public void setName(String name){ this.name=name; } public String getName(){ return name; } public void setAge(int age){ this.age=age; } public int getAge(){ return age; } } public class TestOne{ public static void main(String[] args){ UserInfo info=new UserInfo(); info.setName("zhangsan"); info.setAge(24); //將對象轉換爲JSON字符串 String strJson=JSON.toJSONString(info); System.out.println("JSON="+strJson); } }
說明:java
public void test3(){ String json="{\"name\":\"chenggang\",\"age\":24}"; //反序列化 UserInfo userInfo=JSON.parseObject(json,UserInfo.class); System.out.println("name:"+userInfo.getName()+", age:"+userInfo.getAge()); } /**泛型的反序列化*/ public static void test4(){ String json="{\"user\":{\"name\":\"zhangsan\",\"age\":25}}"; Map<String, UserInfoBean> map = JSON.parseObject(json, new TypeReference<Map<String, UserInfoBean>>(){}); System.out.println(map.get("user")); }
public void test5(){ Date date=new Date(); //輸出毫秒值 System.out.println(JSON.toJSONString(date)); //默認格式爲yyyy-MM-dd HH:mm:ss System.out.println(JSON.toJSONString(date, SerializerFeature.WriteDateUseDateFormat)); //根據自定義格式輸出日期 System.out.println(JSON.toJSONStringWithDateFormat(date, "yyyy-MM-dd", SerializerFeature.WriteDateUseDateFormat)); }
說明:json
阿里巴巴提供了不少SerializerFeature.XXX 這些都很符合中國人的習慣。比起Jackson各有優劣!this
Fastjson API入口類是com.alibaba.fastjson.JSON,經常使用的序列化操做均可以在JSON類上的靜態方法直接完成。
// public static final Object parse(String text); // 把JSON文本parse爲JSONObject或者JSONArray // public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject // public static final <T> T parseObject(String text, Class<T> clazz); // 把JSON文本parse爲JavaBean // public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray // public static final <T> List<T> parseArray(String text, Class<T> clazz); //把JSON文本parse成JavaBean集合 // public static final String toJSONString(Object object); // 將JavaBean序列化爲JSON文本 // public static final String toJSONString(Object object, boolean prettyFormat); // 將JavaBean序列化爲帶格式的JSON文本 // public static final Object toJSON(Object javaObject); 將JavaBean轉換爲JSONObject或者JSONArray(和上面方法的區別是返回值是不同的)