参考了一个例子,在后台处理完之后我是这么返回值的:
JSON json = JSONSerializer.toJSON(new JsonResult<ResumeVO>(0, "页面加载成功!", resumeVO));
return json.toString();
这样子做的话如果返回的实体里含有Date或者Timestamp类型的值,在前端的显示是:
"birthday": {
"date": 26,
"hours": 0,
"seconds": 0,
"month": 5,
"timezoneOffset": -480,
"year": 96,
"minutes": 0,
"time": 835718400000,
"day": 3
}
有没有人用过这一个工具类的啊,怎么还是让他显示成yyyy-MM-dd形式的?(@JsonFormat用过了没用,改成字符串类型虽然有用,但是现在改的话要非很大工夫)
4 回答
人到中年有点甜
TA贡献1895条经验 获得超7个赞
之前遇到过,网上找了端js代码格式化时间。
//对Date的扩展,将 Date 转化为指定格式的String
//月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
//年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
Date.prototype.Format = function (fmt) {
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"H+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt))
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt))
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
}
紫衣仙女
TA贡献1839条经验 获得超15个赞
通常来说后端json传时间的话传你这样的时间戳更好吧,然后再由前段转成想要显示的时间字符串。
有个类似的问题你可以看一下为什么后台给前台Date是时间戳,而前台给后台则直接是时间字符串?
添加回答
举报
0/150
提交
取消