练习:将从表读出来的时间戳除以1000(java读时间戳会多出3个000)jackson包 实现

entity

@Entity
@DynamicUpdate //自动更新日期
@Data //get/set
public class OrderDetail { @Id
private String detailId; /**订单id**/
private String orderId; /**商品id**/
private String productId; /**商品名**/
private String productName; /**商品价格**/
private BigDecimal productPrice; /**购票数量**/
private Integer productQuantity; /**商品图片**/
private String productIcon; /**时间戳**/
private Date createTimestamp; /**时间戳**/
private Date updateTimestamp;
}

  

java读出的数据格式,时间戳会精确到毫秒,多出3个000

{
"statusCode": 0,
"message": "返回成功",
"data": [{
"orderId": "1542785381425923730",
"buyerName": "王五",
"buyerPhone": "15605852476",
"buyerAddr": "北京王府井",
"buyerOpenid": "110112",
"buyerAmount": 4.40,
"orderStatus": 0,
"payStatus": 0,
"createTimestamp": 1542794276000,
"updateTimestamp": 1542794276000,
"orderDetailList": null
}]
}

  

解决方法:

1.继承com.fasterxml.jackson.databind.JsonSerializer;的类,并复写:serialize(T.....)方法

public class DateToTimestamp extends JsonSerializer<Date> {
@Override
public void serialize(Date date, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
jsonGenerator.writeNumber(date.getTime() / 1000);
}
}

  

2.在实体类上用上新建的 DateToTimestamp 类的注解

@Entity
@DynamicUpdate //自动更新日期
@Data //get/set
public class OrderMaster { @Id
private String orderId; /**买家名字**/
private String buyerName; /**买家手机**/
private String buyerPhone; /**买家地址**/
private String buyerAddr; /**用户openid**/
private String buyerOpenid; /**订单金额**/
private BigDecimal buyerAmount; /**订单状态, 默认状态0新订单**/
private Integer orderStatus = OrderStatusEnum.NEW.getCode(); /**支付状态, 默认状态0等待支付**/
private Integer payStatus = PayStatusEnum.WAIT.getCode(); /**
* 此注解表示时间戳除以1000
*/
@JsonSerialize(using = DateToTimestamp.class)
private Date createTimestamp; /**
* 此注解表示时间戳除以1000
*/
@JsonSerialize(using = DateToTimestamp.class)
private Date updateTimestamp; }

  

练习:将从表读出来的时间戳除以1000(java读时间戳会多出3个000)用jackson包 实现的更多相关文章

  1. paip.日期时间操作以及时间戳uapi php java python 总结

    paip.日期时间操作以及时间戳uapi php java python 总结 ///uapi Date 函数 | Day 函数 | Hour 函数 | Minute 函数 | Month 函数 | ...

  2. java获取时间戳的方法

    JAVA 获取当前月的初始时间的时间戳 public static long getMonthFirstDay() { Calendar calendar = Calendar.getInstance ...

  3. php日期转时间戳,指定日期转换成时间戳

    写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储.处理方便,但 是不直观,格式化日期直观,但是处理起来不如Unix时间戳那么 ...

  4. Java 存储时间戳的几种方式

    有时需要记录一下数据生成时间的时间戳,精确到秒,这里记录一下java存储时间戳字符串的几种方式 1.DateFormat private static final SimpleDateFormat s ...

  5. Java-Runoob-高级教程-实例-时间处理:04. Java 实例 - 时间戳转换成时间

    ylbtech-Java-Runoob-高级教程-实例-时间处理:04. Java 实例 - 时间戳转换成时间 1.返回顶部 1. Java 实例 - 时间戳转换成时间  Java 实例 以下实例演示 ...

  6. java 获取时间戳的三种方式

      java 获取时间戳的三种方式 CreationTime--2018年7月13日16点29分 Author:Marydon 1.实现方式 方式一:推荐使用 System.currentTimeMi ...

  7. MapReduce实现两表的Join--原理及python和java代码实现

    用Hive一句话搞定的,可是有时必需要用mapreduce 方法介绍 1. 概述 在传统数据库(如:MYSQL)中,JOIN操作是很常见且很耗时的.而在HADOOP中进行JOIN操作.相同常见且耗时, ...

  8. Atitit.软件命名空间  包的命名统计 及命名表(2000个名称) 方案java package

    Atitit.软件命名空间  包的命名统计 及命名表(2000个名称) 方案java package 1. 统计的lib jar 列表1 2. Code3 3. 常用包名按找字母排序(2000个)4 ...

  9. 【问题记录】MySQL中时间戳转日期格式和Java中时间戳转日期格式偶尔不一致

    背景: MySQL的某个字段存放着一些时间戳格式的时间. 问题描述: Java程序将MySQL中的时间戳字段取出来,在Java程序中转成yyyy-MM-dd HH:mm:ss格式的时候,偶尔会出现转化 ...

随机推荐

  1. 基于QProbe创建基本Android图像处理框架

    先来看一个GIF 这个GIF中有以下几个值得注意的地方 这个界面是基本的主要界面所应该在的地方.其右下角有一个“+”号,点击后,打开图像采集界面 在这个界面最上面的地方,显示的是当前图像处理的状态.( ...

  2. CentOS 7 install slurm cluster

    //slurm install //CentOS 7 system //192.168.159.141 node01 //192.168.159.142 node02 systemctl stop f ...

  3. 检测 C++ 内存泄露

    转载:http://www.cnblogs.com/zouzf/p/4152279.html #include "stdafx.h" #include <string> ...

  4. nginx 配置 https 请求

    1,先去这个网站申请一下证书 https://certmall.trustauth.cn/Home/Member/index/id/1521167511.html 上面会教你怎么去做. 2,就是配置自 ...

  5. 使用Numpy实现卷积神经网络(CNN)

    import numpy as np import sys def conv_(img, conv_filter): filter_size = conv_filter.shape[1] result ...

  6. C盘清理

    魔方清理大师 “清理大师”->清理界面 一键清理=>开始扫描=>立刻清理 注册表清理=>开始扫描=>立刻清理 深度清理=>开始扫描=>立刻清理 C:\User ...

  7. Linux命令3——c

    cal:calender,显示月历 -j:用凯撒历(dates of julius caesar)的形式来显示月历,不分月份.1-365/366 -m:显示月历时,把星期一定为一周的开始.默认星期日为 ...

  8. Javascript 高级程序设计(第3版) - 第02章

    2017-05-10 更新原文: http://www.cnblogs.com/daysme 在 html 中使用 js 把js代码写在 <script type="text/java ...

  9. 小程序之根据参数更改title

    是这样的,今天呢在写中英文切换功能,哇  从psd图里面去复制英文在去对应,真的是太难受了 okok 切回正题   当用户选择英文的时候   我的title也要是英文怎么办呢 wx.setNaviga ...

  10. JaveWeb 公司项目(6)----- 通过ToolTip给控件添加动态注释

    现在公司的项目进展到了视屏这一块,关于海康网页端的构建我会另外写一篇博客来详细讲解,这一篇的博文主要讲的是我刚刚遇到的一个小问题 连接上了视屏之后,将控制按钮换成图标,方位按钮比较好理解,调焦调距的按 ...