关于Record对象JSON序列化

List<Record> list = Db.find(Db.getSql("xx.xx"));
renderJson(list);
me.setJsonFactory(new FastJsonFactory());

现在record里有两列是日期类型,分别想返回yyyy-MM-dd和yyyy-MM-dd HH:mm:ss格式该怎么处理?

me.setJsonDatePattern("yyyy-MM-dd HH:mm:ss");

上面这种方式是全局设置,不符合我的需求。

评论区

JFinal

2018-09-17 20:29

默认是全局配置,但也可以临时指定自己的配置,例如:
FastJson.getJson().setDatePattern("yyyy-MM-dd").toJson(list);

上面的代码,直接使用 FastJson 并配置好日期格式,再进行转换

同理,其她两个实现也类似:
JFinalJson.getJson().setDatePattern("yyyy-MM-dd").toJson(list);
Jackson.getJson().setDatePattern("yyyy-MM-dd").toJson(list);

天朝子民

2018-09-17 23:02

@JFinal 这样还是不符合我的预期吧?粒度怎么控制到每个属性呢?list里有2个元素是日期类型,序列化成不同格式。

JFinal

2018-09-18 09:57

@天朝子民 你用的 fastjson,这个工具还有注解可以用在 getter 方法上,细粒度控制转换格式,看一下 fastjson 的官方文档

fansunion

2018-10-10 22:42

@JFinal @jsonfield format

热门反馈

扫码入社