解决SSM时间格式问题

SSM时间格式问题

存入数据库的时间格式是datetime
time
2020-01-16 21:32:52
然而前端取到的是

1579181572000(一串数字 =_=|| 真的是wtf )

历经十几分钟的百度脑补知识后的我恍然大悟
解决方法如下:
  1. 先在pom文件中添加jackson依赖和spring依赖(这里我偷懒把spring包一次导入 虽然有些没用的HH)
		<!-- spring 3个 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>4.1.6.RELEASE</version>
		</dependency>

		<!-- jackson -->
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>2.4.1</version>
		</dependency>
  1. 在属性上加入如下两个注解
import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;
	//接收参数的格式
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	//输出参数的格式
	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
	private Date time;

这个博主写的不错https://blog.csdn.net/flymu0808/article/details/50669294

以下这段是摘自他的:

Why do Dates get written as numbers?
Default serializer for java.util.Date (and related, such as java.util.Calendar) serialize them using the most efficient accurate representation, so-called epoch timestamp (number of milliseconds since January 1st, 1970, UTC). Assumption is that if user does not care, we should use efficient and accurate representation to get job bdone

反思本次出现这次错误的原因在于:吃的没有了解到Date序列化的过程亏,在存入的时候有做数据格式变化,但取出来的时候不知道会默认序列化成为数字没做格式转换。其实还有一种解决方法就是在对于的mapper.xml文件中,将resultType设置一下应该也可以的。
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值