数据库字段是datetime,通过分页获取,返回是时间戳,何解?

数据库字段是datetime,通过分页获取,返回是时间戳,何解?我记得以前是不会的呀?数据库是用mariaDb,跟这个有关么

评论区

JFinal

2016-08-23 15:01

新添加一个 datetime 字段做下测试,mysql 肯定是不会出这个问题的,mariaDb 没用过,不敢肯定,建议测试一下

lyq027

2016-08-23 16:16

@JFinal 不行,重新建了一个表,只有一个主键id跟一个datetime的字段,然后用json返回,显示的都是时间戳,搞不懂哪里出错才会变成这样

JFinal

2016-08-23 16:19

@lyq027 datatime 默认也是包含时分秒数据的,所以如果你要转成 json那确实可能带有时分秒,但不会是时间戳,建义你调试一下,查询出来的数据是 Date 类型,还是 Timestamp 类型,这个很关键

lyq027

2016-08-23 16:24

@JFinal 终于找到原因了,在config中加了me.setJsonFactory(new FastJsonFactory());去掉就正常了。但是不解的是,这个不是fastjson的实现么?为什么加了datetime就返回时间戳,去掉就正常显示.

JFinal

2016-08-23 16:27

@lyq027 很可能是 fastjson 将 datetime 转 json 时默认就是转成时间戳,或许有配置可以控制,如果你用 fastjson 搞定了,希望你能回来再分享给朋友们

LittleBear

2018-05-10 16:37

我也遇到了这个问题,但是我没有用到setJsonFactory哒,不解