let json serialize ISP as number

This commit is contained in:
Sola
2015-12-12 22:46:44 +08:00
parent 3a4ed81482
commit 19f68c1e33

View File

@@ -1,6 +1,7 @@
package love.sola.netsupport.sql; package love.sola.netsupport.sql;
import com.google.gson.*; import com.google.gson.*;
import love.sola.netsupport.enums.ISP;
import org.hibernate.SessionFactory; import org.hibernate.SessionFactory;
import org.hibernate.boot.MetadataSources; import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder; import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
@@ -22,6 +23,8 @@ public class SQLCore {
public static Gson gson = new GsonBuilder() public static Gson gson = new GsonBuilder()
.registerTypeAdapter(Date.class, (JsonDeserializer<Date>) (json, typeOfT, context) -> new Date(json.getAsJsonPrimitive().getAsLong())) .registerTypeAdapter(Date.class, (JsonDeserializer<Date>) (json, typeOfT, context) -> new Date(json.getAsJsonPrimitive().getAsLong()))
.registerTypeAdapter(Date.class, (JsonSerializer<Date>) (src, typeOfSrc, context) -> new JsonPrimitive(src.getTime())) .registerTypeAdapter(Date.class, (JsonSerializer<Date>) (src, typeOfSrc, context) -> new JsonPrimitive(src.getTime()))
.registerTypeAdapter(ISP.class, (JsonDeserializer<ISP>) (json, typeOfT, context) -> ISP.fromId(json.getAsJsonPrimitive().getAsInt()))
.registerTypeAdapter(ISP.class, (JsonSerializer<ISP>) (src, typeOfSrc, context) -> new JsonPrimitive(src.id))
.create(); .create();
public static SessionFactory sf; public static SessionFactory sf;
public static ServiceRegistry sr; public static ServiceRegistry sr;