JSON.toJSONString 源码
/**
* This method serializes the specified object into its equivalent Json representation. Note that this method works fine if the any of the object fields are of generic type,
* just the object itself should not be of a generic type. If you want to write out the object to a
* {@link Writer}, use {@link #writeJSONString(Writer, Object, SerializerFeature[])} instead.
*
* @param object the object for which json representation is to be created setting for fastjson
* @return Json representation of {@code object}.
*/
public static String toJSONString(Object object) {
return toJSONString(object, emptyFilters);
}
public static String toJSONString(Object object, SerializerFeature... features) {
return toJSONString(object, DEFAULT_GENERATE_FEATURE, features);
}
从源码,我们可以知道:fastjson中object转string时的配置项,包括
1. 是否显示value为null的项
2. 是否格式化显示字符串
3. 日期是否格式化显示为可读字符串
fastjson:SerializerFeature属性使用
实例
public static void main(String[] args) {
// 输出结果
JSONObject param = new JSONObject();
param.put("sign","123");
param.put("reqMsg",null);
param.put("creatTime",new Date());
String jsonString = JSON.toJSONString(param, SerializerFeature.PrettyFormat, SerializerFeature.WriteMapNullValue,
SerializerFeature.WriteDateUseDateFormat);
System.out.println("【输出结果】\r\n"+jsonString);
}
输出结果:
【输出结果】
{
"creatTime":"2019-06-18 11:03:14",
"sign":"123",
"reqMsg":null
}