前后端时间正确传递

2024-09-05 19:12
文章标签 时间 正确 传递

本文主要是介绍前后端时间正确传递,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

引言:后端传递给前端去展示时间的时候将时间转化为String类型的时间数据去返回。此时就需要加上 @JsonFormat 注解来解决这个问题。

框架环境配置中,时间配置为

情形一:

  • 数据库字段exam_time类型为date

  • 后端实体类中examTime类型为Date

1.前端绑定的examTime类型type设置为datetime,以String类型进行传递

  <el-date-picker v-model="dataForm.examTime" type="datetime" :picker-options="pickerOptions" placeholder="考试时间"></el-date-picker>

若以上面的前后端字段设置,在进行时间传递的时候,交互会报错。

解决方法:

(1)如果需要页面展示日期时间字符串,则需要在前端页面的DateTimePicker日期时间选择器组件中加入属性value-format:"yyyy-MM-dd HH:mm:ss"

   <el-form-item label="考试时间" prop="examTime"><el-date-picker v-model="dataForm.examTime" type="datetime"  :picker-options="pickerOptions" value-format="yyyy-MM-dd HH:mm:ss" placeholder="考试时间"></el-date-picker></el-form-item>

显示效果:

(2)如果需要在前端页面仅仅只展示日期,加入属性value-format:"yyyy-MM-dd ",这样后端控制台会报Json解析错误,必须在后端字段上面加入注解@JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")才能防止报错

@JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")private Date examTime;

最后显示效果: 

2.前端绑定的examTime类型type设置为date,以String类型进行传递

el-date-picker v-model="dataForm.examTime" type="date" :picker-options="pickerOptions" placeholder="考试时间"></el-date-picker>

 这样设置的话,在后端会报错

解决方法:

(1)解决的方法依旧是如果页面需要展示日期字符串,后端实体字段加上注解@JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd"),前端属性value-format:"yyyy-MM-dd ",最后页面展示的是以日期字符串展示的。

(2)若要展示日期时间字符串,前端加上属性value-format:"yyyy-MM-dd HH:mm:ss",后端什么注解都不加,最后页面是以日期时间字符串展示

情形二:

  • 数据库字段exam_time类型为datetime
  • 后端实体类中examTime类型为Date

1.前端绑定的examTime类型type设置为datetime,以String类型进行传递

<el-date-picker v-model="dataForm.examTime" type="datetime" :picker-options="pickerOptions"    placeholder="考试时间"></el-date-picker>

(1)若页面展示考试时间为日期时间字符串,前端加上属性value-format:"yyyy-MM-dd HH:mm:ss",后端加上注解@JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd HH:mm:ss"),代码不会报错

(2)若页面展示考试时间为日期字符串,前端加上属性value-format:"yyyy-MM-dd ",后端加上注解@JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd "),代码不会报错

2.前端绑定的examTime类型type设置为date,以String类型进行传递

(1)若页面展示考试时间为日期时间字符串,前端加上属性value-format:"yyyy-MM-dd HH:mm:ss",后端不加注解,不会报错

(2)若页面展示考试时间为日期字符串,前端加上属性value-format:"yyyy-MM-dd",后端不加注解会报错,加上注解@JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd"),不会报错

总结:前端属性都加value-format,按自己想要转换的类型设置

           后端在时间字段上都加上@JsonFormat注解

这篇关于前后端时间正确传递的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1139822

相关文章

如何利用Java获取当天的开始和结束时间

《如何利用Java获取当天的开始和结束时间》:本文主要介绍如何使用Java8的LocalDate和LocalDateTime类获取指定日期的开始和结束时间,展示了如何通过这些类进行日期和时间的处... 目录前言1. Java日期时间API概述2. 获取当天的开始和结束时间代码解析运行结果3. 总结前言在J

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

Go Mongox轻松实现MongoDB的时间字段自动填充

《GoMongox轻松实现MongoDB的时间字段自动填充》这篇文章主要为大家详细介绍了Go语言如何使用mongox库,在插入和更新数据时自动填充时间字段,从而提升开发效率并减少重复代码,需要的可以... 目录前言时间字段填充规则Mongox 的安装使用 Mongox 进行插入操作使用 Mongox 进行更

异步线程traceId如何实现传递

《异步线程traceId如何实现传递》文章介绍了如何在异步请求中传递traceId,通过重写ThreadPoolTaskExecutor的方法和实现TaskDecorator接口来增强线程池,确保异步... 目录前言重写ThreadPoolTaskExecutor中方法线程池增强总结前言在日常问题排查中,

对postgresql日期和时间的比较

《对postgresql日期和时间的比较》文章介绍了在数据库中处理日期和时间类型时的一些注意事项,包括如何将字符串转换为日期或时间类型,以及在比较时自动转换的情况,作者建议在使用数据库时,根据具体情况... 目录PostgreSQL日期和时间比较DB里保存到时分秒,需要和年月日比较db里存储date或者ti

golang1.23版本之前 Timer Reset方法无法正确使用

《golang1.23版本之前TimerReset方法无法正确使用》在Go1.23之前,使用`time.Reset`函数时需要先调用`Stop`并明确从timer的channel中抽取出东西,以避... 目录golang1.23 之前 Reset ​到底有什么问题golang1.23 之前到底应该如何正确的

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

Python 标准库time时间的访问和转换问题小结

《Python标准库time时间的访问和转换问题小结》time模块为Python提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时... 目录模块介绍使用场景主要类主要函数 - time()- sleep()- localtime()- g

如何用Java结合经纬度位置计算目标点的日出日落时间详解

《如何用Java结合经纬度位置计算目标点的日出日落时间详解》这篇文章主详细讲解了如何基于目标点的经纬度计算日出日落时间,提供了在线API和Java库两种计算方法,并通过实际案例展示了其应用,需要的朋友... 目录前言一、应用示例1、天安门升旗时间2、湖南省日出日落信息二、Java日出日落计算1、在线API2

Java向kettle8.0传递参数的方式总结

《Java向kettle8.0传递参数的方式总结》介绍了如何在Kettle中传递参数到转换和作业中,包括设置全局properties、使用TransMeta和JobMeta的parameterValu... 目录1.传递参数到转换中2.传递参数到作业中总结1.传递参数到转换中1.1. 通过设置Trans的