gson转换对象为json字符串时对特殊字符编码的问题
使用google的gson进行object和json的转换,如下:
public static String object2json(Object obj) { Gson gson = new Gson(); return gson.toJson(obj); }
这样转出来的字符串特殊字符,比如url中的=会变成unicode编码。
需要禁用html转义。
如下:
public static String object2json(Object obj) { Gson gson = new GsonBuilder().disableHtmlEscaping().create(); return gson.toJson(obj); }
这样就没不会自动转码了。
使用jackjson不会有这种问题。如下:
public static String object2jackJson(Object arg0) { ObjectMapper mapper = new ObjectMapper(); try { return mapper.writeValueAsString(arg0); } catch (JsonProcessingException e) { e.printStackTrace(); return null ; } }