import com.google.gson.*;
import java.lang.reflect.Type;
import java.text.DateFormat;
import java.util.Date;
public class GsonUtil {
private static Gson instance = null;
public synchronized static Gson getGson() {
if (instance == null) {
GsonBuilder builder = new GsonBuilder();
builder.registerTypeAdapter(Date.class, new DateSerializer()).setDateFormat(DateFormat.LONG);
builder.registerTypeAdapter(Date.class, new DateDeserializer()).setDateFormat(DateFormat.LONG);
instance = builder.create();
}
return instance;
}
static class DateSerializer implements JsonSerializer<Date> {
public JsonElement serialize(Date src, Type typeOfSrc, JsonSerializationContext context) {
return new JsonPrimitive(src.getTime());
}
}
static class DateDeserializer implements JsonDeserializer<Date> {
public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
return new java.util.Date(json.getAsJsonPrimitive().getAsLong());
}
}
}
注:要引入google gson包