springboot json时间格式化处理的方法

 更新时间:2018年03月27日 16:36:05   作者:殷天文  
这篇文章主要介绍了springboot json时间格式化处理的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

application.properties中加入如下代码

springboot 默认使用 jackson 解析 json

spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8

如果个别实体需要使用其他格式的 pattern,在实体上加入注解即可

import org.springframework.format.annotation.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;
public class MrType {

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

Spring Boot 日期数据格式转换@JsonFormat实例

pojo的bean里面通常会有Date类型的数据,直接通过@ResponseBody返回出去的是一个长整型时间戳(从1970到该变量时间的毫秒数),关于原因,网上很多,此处不细讲。如果想要返回自定义的日期格式,如:yyyymmddhhmmss,需做相关处理,网上有很多处理方式,大体都是继承、重写,比较复杂。实际上JSON已有注解@JsonFormat支持,使用实例:

@JsonFormat(timezone = "GMT+8", pattern = "yyyyMMddHHmmss")
private Date createTime;

作用:1)入参时,请求报文只需要传入yyyymmddhhmmss字符串进来,则自动转换为Date类型数据。2)出参时,Date类型的数据自动转换为14位的字符串返回出去。

详细可参阅: http://fasterxml.github.io/jackson-annotations/javadoc/2.0.0/com/fasterxml/jackson/annotation/JsonFormat.html

相关的其他注解:

  1. @JsonIgnoreProperties 此注解是类注解,作用是json序列化时将java bean中的一些属性忽略掉,序列化和反序列化都受影响。 @JsonIgnoreProperties(value = { "word" }) 
  2. @JsonIgnore 此注解用于属性或者方法上(最好是属性上),作用和上面的@JsonIgnoreProperties一样。
  3. @JsonSerialize 此注解用于属性或者getter方法上,用于在序列化时嵌入我们自定义的代码,比如序列化一个double时在其后面限制两位小数点。 @JsonSerialize(using = CustomDoubleSerialize.class) 
  4. @JsonDeserialize 此注解用于属性或者setter方法上,用于在反序列化时可以嵌入我们自定义的代码,类似于上面的@JsonSerialize  @JsonDeserialize(using = CustomDateDeserialize.class)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Java获取时间差(天数差,小时差,分钟差)代码示例

    Java获取时间差(天数差,小时差,分钟差)代码示例

    这篇文章主要介绍了Java获取时间差(天数差,小时差,分钟差)代码示例,使用SimpleDateFormat来实现的相关代码,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11
  • Spring实战之SpEl语法实例详解

    Spring实战之SpEl语法实例详解

    这篇文章主要介绍了Spring实战之SpEl语法,结合实例形式分析了SpEl创建数组、集合及解析变量等相关操作原理与实现技巧,需要的朋友可以参考下
    2019-12-12
  • maven加入spring框架的详细教程

    maven加入spring框架的详细教程

    这篇文章主要介绍了maven加入spring框架的详细教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • java基于NIO实现群聊模式

    java基于NIO实现群聊模式

    这篇文章主要为大家详细介绍了java实现NIO实现群聊模式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • Mybatis实现动态SQL编写详细代码示例

    Mybatis实现动态SQL编写详细代码示例

    这篇文章主要为大家详细介绍了Mybatis中动态SQL的编写使用,动态SQL技术是一种根据特定条件动态拼装SQL语句的功能,它存在的意义是为了解决拼接SQL语句字符串时的痛点问题,感兴趣想要详细了解可以参考下文
    2023-05-05
  • Java集合与数组区别简介及相互转换实例

    Java集合与数组区别简介及相互转换实例

    这篇文章主要介绍了Java集合与数组区别简介及相互转换实例,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • jmeter添加自定义扩展函数之图片base64编码示例详解

    jmeter添加自定义扩展函数之图片base64编码示例详解

    这篇文章主要介绍了jmeter添加自定义扩展函数之图片base64编码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01
  • java递归实现复制一个文件夹下所有文件功能

    java递归实现复制一个文件夹下所有文件功能

    这篇文章主要介绍了java递归实现复制一个文件夹下所有文件功能n次,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • 初识Spring Boot框架之Spring Boot的自动配置

    初识Spring Boot框架之Spring Boot的自动配置

    本篇文章主要介绍了初识Spring Boot框架之Spring Boot的自动配置,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-04-04
  • IntelliJ IDEA如何设置JDK版本

    IntelliJ IDEA如何设置JDK版本

    这篇文章主要介绍了IntelliJ IDEA如何设置JDK版本问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12

最新评论