https://www.sojson.com/blog/246.html

********************************************

Jackson  是  SpringMvc  官方推荐结合的,其实我是习惯用   Gson  的,但是由于公司统一使用   Jackson  ,自然对   Jackson  需要关注的更多。下面来说说其中一个注解,就是 @JsonFormat 。

@JsonFormat 使用

我们可以有两种用法(我知道的),在对象属性上,或者在属性的 getter 方法上,如下代码所示:

增加到属性上:

/**更新时间  用户可以点击更新,保存最新更新的时间。**/
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date updateTime;

增加到 getter 方法上:

@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
public Date getUpdateTime() {
return updateTime;
}

以上结果输出都是一样的。这个没有什么好说明的。具体输出格式,自己调整 pattern 。

@JsonFormat 相差8小时问题

上面直接这么使用,在我们中国来讲和我们的北京时间,会相差8个小时,因为我们是东八区(北京时间)。

所以我们在格式化的时候要指定时区(timezone ),代码如下:

/**更新时间  用户可以点击更新,保存最新更新的时间。**/
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private Date updateTime;

也就是增加一个属性,timezone="GMT+8" 即可,getter 方法我就不写了,一样的。

咱看看结果,我这个接口就是这么输出的:公安网备查询 ,以 http://www.sojson.com/api/gongan/sina.com.cn 为例。

    {
"data": {
"id": "11000002000016",
"sitename": "新浪网",
"sitedomain": "sina.com.cn",
"sitetype": "交互式",
"cdate": "2016-01-21",
"comtype": "企业单位",
"comname": "北京新浪互联信息服务有限公司",
"comaddress": "北京市网安总队",
"updateTime": "2017-09-05 02:26:34" //看这...这里就是刚刚输出的。
},
"status": 200
}

Jackson 时间格式化,时间注解 @JsonFormat 用法、时差问题说明的更多相关文章

  1. 在SpringMVC中使用Jackson并格式化时间

    在spring MVC 3中,要实现REST风格的JSON服务,最简单的方式是使用 @ResponseBody 注解.该注解会自动把返回的对象,序列化为JSON. 来看一个最简单的例子.这个例子先使用 ...

  2. js 时间格式化 -- 时间加减实现

    时间格式化的方法: Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.ge ...

  3. velocity 时间显示 时间格式化 时间转化

    思想:通过前台展现层(Velocity)中的工具(tools)方法来修改. *************** 具体修改步骤: 1.在toolbox.xml配置文件中添加以下代码: <tool> ...

  4. @JsonFormat时间格式化注解使用

    @JsonFormat注解是一个时间格式化注解,比如我们存储在mysql中的数据是date类型的,当我们读取出来封装在实体类中的时候,就会变成英文时间格式,而不是yyyy-MM-dd HH:mm:ss ...

  5. springMVC中jackson的使用(包含JsonFormat 时间格式)

    前台使用ajax,后台 springMVC Java下常见的Json类库有Gson.JSON-lib和Jackson等,Jackson相对来说比较高效,在项目中主要使用Jackson进行JSON和Ja ...

  6. JAVA中String.format的用法 格式化字符串,格式化数字,日期时间格式化,

    1.对整数进行格式化:%[index$][标识][最小宽度]转换方式        我们可以看到,格式化字符串由4部分组成,其中%[index$]的含义我们上面已经讲过,[最小宽度]的含义也很好理解, ...

  7. 【 格式化时间(SimpleDateFormat)用法】

    将特定字符串转换成Date格式 可以通过 new 一个 SimpleDateFormat 对象,通过对象调用parse方法实现 示例代码: String time = "2019-11-09 ...

  8. Java 学习 时间格式化(SimpleDateFormat)与历法类(Calendar)用法详解

    基于Android一些时间创建的基本概念 获取当前时间 方式一: Date date = new Date(); Log.e(TAG, "当前时间="+date); 结果: E/T ...

  9. Springboot 关于日期时间格式化处理方式总结

    项目中使用LocalDateTime系列作为DTO中时间的数据类型,但是SpringMVC收到参数后总报错,为了配置全局时间类型转换,尝试了如下处理方式. 注:本文基于Springboot2.x测试, ...

随机推荐

  1. MySQL的keepalived高可用监控脚本

    MySQL的keepalived高可用监控脚本 MySQL(或者其它服务)的keepalived高可用监控脚本 开发脚本需求 :我们知道,keepalive是基于虚拟ip的存活来判断是否抢占maste ...

  2. java小程序,用java在指定目录或以及子目录中找出同名文件,java File过滤文件名后找同名文件

    主要是使用java API“java.io.File”实现 一个简单的类,copy出来,因main方法可直接运行. package com.paic.icore.pams.auto.util; imp ...

  3. 代码管理(五)git 删除分支

    1.删除远程分支 在远程下面,选择需要删除的分支,右击,选择删除 2.  删除不存在远程对应分支的本地分支 在远程上建立了一个分支feature,后来leader觉得不合理,就把远程feature分支 ...

  4. 自定义 iPhone 铃声

    1.iPhone 铃声格式 iPhone 的来电铃声时长限制为 40 秒,短信铃声时长限制为 25 秒,且 iOS5 及以上的系统才支持 m4r 格式的短信铃声. 2.自定义 iPhone 铃声 1) ...

  5. WebAPI调用笔记 ASP.NET CORE 学习之自定义异常处理 MySQL数据库查询优化建议 .NET操作XML文件之泛型集合的序列化与反序列化 Asp.Net Core 轻松学-多线程之Task快速上手 Asp.Net Core 轻松学-多线程之Task(补充)

    WebAPI调用笔记   前言 即时通信项目中初次调用OA接口遇到了一些问题,因为本人从业后几乎一直做CS端项目,一个简单的WebAPI调用居然浪费了不少时间,特此记录. 接口描述 首先说明一下,基于 ...

  6. golang ----rune数据类型

    查询,官方的解释如下: // rune is an alias for int32 and is equivalent to int32 in all ways. It is // used, by ...

  7. C++的坑真的多吗?

    先说明一下,我不希望本文变成语言争论贴.希望下面的文章能让我们客观理性地了解C++这个语言.(另,我觉得技术争论不要停留在非黑即白的二元价值观上,这样争论无非就是比谁的嗓门大,比哪一方的观点强,毫无价 ...

  8. 还没被玩坏的robobrowser(1)-简介

    今天偶然发现了一个很有意思的python库——robobrowser.简单的看了一下,觉得这个东东作为轻量的爬虫还是很适合的.另外这个做一些简单的web测试也未尝不可. 好了,那么问题来了. 什么是r ...

  9. Linux shell下30个有趣的命令

    Tips 原文作者:Víctor López Ferrando 原文地址:30 interesting commands for the Linux shell 这些是我收集了多年的Linux she ...

  10. Android后台处理最佳实践(Best Practices for Background Jobs)

    本课将告诉你如何通过后台加载来加速应用启动和降低应用耗电. 后台跑服务 除非你做了特殊指定,否则在应用中的大部分前台操作都是在一个特殊的UI线程里面进行的.这有可能会导致一些问题,因为长时间运行的操作 ...