java使用alibaba的fastjson转换list对象时对日期的处理

com.alibaba.fastjson.JSON提供了将对象转换成JSON对象的方法:

JSON.toJSON

JSON.toJSONString


在使用过程中发现,如果有日期的数据对象,转换后的数据日期类变成了long型:

@Override
	public String getChangeRecordHis(String id) {
		return JSON.toJSONString(dataDao.getChangeRecordHis(id));
	}
java使用alibaba的fastjson转换list对象时对日期的处理_第1张图片
opTime字段被转成了:
1530780304000

但客户或者接口另一方的人肯定是不愿意看到这有的结构的数据的,一客户看不到,二者数据看不出其类型。

其实fastjson还提供了一个方法:

toJSONStringWithDateFormat(Object object, String dateFormat,SerializerFeature... features)

java使用alibaba的fastjson转换list对象时对日期的处理_第2张图片

那我们改造上面的返回值如下:

@Override
	public String getChangeRecordHis(String id) {
		return JSON.toJSONStringWithDateFormat(dataDao.getChangeRecordHis(id),"yyyy-MM-dd  HH:mm:ss");
	}
java使用alibaba的fastjson转换list对象时对日期的处理_第3张图片
接口返回的opTime字段显示正常了,客户或者对方也能一眼知道这是个什么样的数据类型。

所有还是要求开发人员多看文档,多看api。fastjson API:https://www.w3cschool.cn/fastjson/fastjson-api.html

你可能感兴趣的:(java,fastjson,日期格式)