在写软件过程中,经常遇到后台返回null不稳定造成崩溃,各种莫名奇妙,使用下面这个方法可以直接避免崩溃,参考了ios转换的方法,将null值直接转为“null”。
- import java.lang.reflect.Type;
- public class StringConverter implements JsonSerializer<String>,
- JsonDeserializer<String> {
- public JsonElement serialize(String src, Type typeOfSrc,
- JsonSerializationContext context) {
- if ( src == null ) {
- return new JsonPrimitive("");
- } else {
- return new JsonPrimitive(src.toString());
- }
- public String deserialize(JsonElement json, Type typeOfT,
- JsonDeserializationContext context)
- throws JsonParseException {
- return json.getAsJsonPrimitive().getAsString();
- }
- }
- 使用方法。
- GsonBuilder gb = new GsonBuilder();
- gb.registerTypeAdapter(String.class, new StringConverter());
- Gson gson = gb.create();