一、摘要
?? ????FastJSON是一個Java語言編寫的高性能,功能完善,完全支持http://json.org的標準的JSON庫。
二、引入maven坐標
?? ????點擊鏈接http://mvnrepository.com/artifact/com.alibaba/fastjson/1.2.47,在Maven Repository倉庫中查找fastjson相應版本maven坐標,引入到自己項目的pom.xml文件中。
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.47</version>
</dependency>
三、使用方式
?? ????在工作中,經常需要將日期轉為我們需要的格式進行存儲,利用fastjson可以簡單的對格式進行轉換。簡單示例如下:
package com.example.orderbusiness.model;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.annotation.JSONField;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class Student {
@JSONField(name="username")
private String name;
private int age;
@JSONField(format="yyyy-MM-dd HH:mm:ss",ordinal = 1)
private Date hireDate;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Date getHireDate() {
return hireDate;
}
public void setHireDate(Date hireDate) {
this.hireDate = hireDate;
}
public Student(String name, int age, Date hireDate) {
this.name = name;
this.age = age;
this.hireDate = hireDate;
}
public static void main(String[] args) {
convertCollectionToJson();
}
public static void convertCollectionToJson(){
List<Student> userList = new ArrayList<>();
userList.add(new Student("tomcat",20,new Date()));
userList.add(new Student("jackson",25,new Date()));
String jsonString = JSON.toJSONString(userList);
System.out.println(jsonString);
}
}
四、常用API
?? ????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 parseObject(String text, Class clazz); // 把JSON文本parse為JavaBean
public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray
public static final List parseArray(String text, Class 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。
總結:將日期、對象等轉為json格式的第三方工具比較主流的有jackson、fastjson、gson。更多資料可參考連接https://www.aliyun.com/jiaocheng/java_5148.html?spm=5176.100033.2.6.t1fwNC