Index: forgon-tools/src/main/java/com/forgon/tools/json/JSONUtil.java =================================================================== diff -u -r15911 -r15912 --- forgon-tools/src/main/java/com/forgon/tools/json/JSONUtil.java (.../JSONUtil.java) (revision 15911) +++ forgon-tools/src/main/java/com/forgon/tools/json/JSONUtil.java (.../JSONUtil.java) (revision 15912) @@ -384,23 +384,32 @@ public static String optString(JsonObject obj,String key, String defValue){ + if(!obj.has(key)){ + return defValue; + } JsonElement jsonElement = obj.get(key); if(jsonElement.isJsonNull()){ - return defValue; + return null; } return jsonElement.getAsString(); } public static Long optLong(JsonObject obj,String key, Long defValue){ + if(!obj.has(key)){ + return defValue; + } JsonElement jsonElement = obj.get(key); if(jsonElement.isJsonNull()){ - return defValue; + return null; } return jsonElement.getAsLong(); } public static int optInt(JsonObject obj,String key, int defValue){ + if(!obj.has(key)){ + return defValue; + } JsonElement jsonElement = obj.get(key); if(jsonElement.isJsonNull()){ return defValue;