栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

@DateTimeFormat与@JsonFormat和value-format

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

@DateTimeFormat与@JsonFormat和value-format

一、时间传值问题

前端时间控件在往后台传值,或者数据库的查到DateTime类型并用java的Date类型接收并返回给前台的时候,往往会出现无法正确接受的问题。这个时候就用到了@DateTimeFormat与@JsonFormat和value-format来解决这些问题了。

二、@DateTimeFormat

该注解主要解决前端时间控件传值到后台Date类属性接收准确的问题,我们可以在需要接收的类中对应的时间类型属性上加上@DateTimeFormat注解,并在注解中加上pattern属性,例如:

@Column(name = "AttendanceDate")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date attendancedate;

随后在前端传入的yyyy-MM-dd HH:mm:ss日期类型就能够按照该种格式进行转义赋值给Date类型。若想按照yyyy/MM/dd的日期格式,则直接修改@DateTimeFormat的pattern属性为对应的日期格式即可,即@DateTimeFormat(pattern = “yyyy/MM/dd”)。

三、@JsonFormat

该注解主要解决后台从数据库中取出时间类型赋予java对象的Date属性值无法在前端以一定的日期格式来呈现,默认返回的是一个带时区的格式串,不符合我们日常要呈现的日期格式。
同样,我们在对应的接收对象时间类型上加上@JsonFormat注解,并在注解中加上pattern属性以及timezone属性,例如:

@Column(name = "AttendanceDate")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date attendancedate;

表示我们从后台数据库查询结果赋予对应的Date java类型为yyyy-MM-dd HH:mm:ss格式,且注意后面的timezone属性,最好加上GMT+8表示我们以东八区时区为准,若读者想用其他时区就可以通过更改timezone属性来改变,从而解决时区不同造成的时间差问题。

四、value-format

value-format是Element-UI时间选择器中的一个用来规范日期格式的属性,例如:


    
    

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/999793.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号