SSM之一步一坑:数据库datetime类型与实体date类型 时间格式转换

问题描述

使用SSM返回Json对象时,发现数据库中datetime的数据字段返回的是date时间戳,如图

查看所涉及到实体时间类型为如图

实体中设置的为date时间戳类型,在页面中需要显示的是"yyyy-MM-dd HH:mm:ss"这种时间格式

解决方案

将实体中的date时间戳改为指定datetime类型时间字段

在SSM进行时间格式转换时,需要在实体中加上如下

@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") ,即可将date返回的对象为指定的类型。

同时需要在SSM项目中引入JsonFormat方法的包,如下在pom.xml 中加入


		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>2.4.2</version>
		</dependency> 
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
			<version>2.8.5</version>
		</dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.9.9</version>
        </dependency>

在SSM的是实体中找到该字段的get方法,

 

再次查询时就会将date字段转换为datetime时间字段,如图

 

以上是使用JsonFormat从数据库中读取的时间格式转换

将使用date类型的时间以datetime类型存储到数据库

解决方案如同上述

在实体中的date时间变量中加上如下包,如图

即可实现上述问题

整理

1、在实体中使用date类型set数据库中的datetime类型,并在页面中以"yyyy-MM-dd HH:mm:ss"显示,需要使用@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") ,对date变量进行注解

2、将date类型以datetime格式存储到数据库,需要使用到@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") ,对date变量进行注解

3、对于页面和数据库中的时间类型转换中,最好在数据库中都是用相同时间类型,比如都是用date类型,然后在SSM项目中对date类型转换为所需求的格式

具体关于实体时间类型date和数据库时间datetime类型的转换解决方案请转至

https://blog.csdn.net/zimojiang/article/details/83412965

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值