练习:将从表读出来的时间戳除以1000(java读时间戳会多出3个000)用jackson包 实现
练习:将从表读出来的时间戳除以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包 实现的更多相关文章
- paip.日期时间操作以及时间戳uapi php java python 总结
paip.日期时间操作以及时间戳uapi php java python 总结 ///uapi Date 函数 | Day 函数 | Hour 函数 | Minute 函数 | Month 函数 | ...
- java获取时间戳的方法
JAVA 获取当前月的初始时间的时间戳 public static long getMonthFirstDay() { Calendar calendar = Calendar.getInstance ...
- php日期转时间戳,指定日期转换成时间戳
写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储.处理方便,但 是不直观,格式化日期直观,但是处理起来不如Unix时间戳那么 ...
- Java 存储时间戳的几种方式
有时需要记录一下数据生成时间的时间戳,精确到秒,这里记录一下java存储时间戳字符串的几种方式 1.DateFormat private static final SimpleDateFormat s ...
- Java-Runoob-高级教程-实例-时间处理:04. Java 实例 - 时间戳转换成时间
ylbtech-Java-Runoob-高级教程-实例-时间处理:04. Java 实例 - 时间戳转换成时间 1.返回顶部 1. Java 实例 - 时间戳转换成时间 Java 实例 以下实例演示 ...
- java 获取时间戳的三种方式
java 获取时间戳的三种方式 CreationTime--2018年7月13日16点29分 Author:Marydon 1.实现方式 方式一:推荐使用 System.currentTimeMi ...
- MapReduce实现两表的Join--原理及python和java代码实现
用Hive一句话搞定的,可是有时必需要用mapreduce 方法介绍 1. 概述 在传统数据库(如:MYSQL)中,JOIN操作是很常见且很耗时的.而在HADOOP中进行JOIN操作.相同常见且耗时, ...
- Atitit.软件命名空间 包的命名统计 及命名表(2000个名称) 方案java package
Atitit.软件命名空间 包的命名统计 及命名表(2000个名称) 方案java package 1. 统计的lib jar 列表1 2. Code3 3. 常用包名按找字母排序(2000个)4 ...
- 【问题记录】MySQL中时间戳转日期格式和Java中时间戳转日期格式偶尔不一致
背景: MySQL的某个字段存放着一些时间戳格式的时间. 问题描述: Java程序将MySQL中的时间戳字段取出来,在Java程序中转成yyyy-MM-dd HH:mm:ss格式的时候,偶尔会出现转化 ...
随机推荐
- Magnum Kubernetes源码分析(一)
Magnum版本说明 本文以magnum的mitaka版本代码为基础进行分析. Magnum Kubernetes Magnum主要支持的概念有bay,baymodel,node,pod,rc,ser ...
- Vue父子组件生命周期
转载自:https://blog.csdn.net/a8725585/article/details/79092505 vue父子组件钩子函数触发顺序 beforeMount后mounted前构造子组 ...
- NOIP 车站分级 (luogu 1983 & codevs 3294 & vijos 1851) - 拓扑排序 - bitset
描述 一条单向的铁路线上,依次有编号为 1, 2, ..., n 的 n 个火车站.每个火车站都有一个级别,最低为 1 级.现有若干趟车次在这条线路上行驶,每一趟都满足如下要求:如果这趟车次停靠了火车 ...
- Junit的异常测试
方式1: @Test(expected = IndexOutOfBoundsException.class) public void empty() { new ArrayList<Object ...
- 2018年第九届蓝桥杯B组题C++汇总解析-fishers
2018年第九届蓝桥杯B组题C++解析-fishers 题型 第一题:第几天 第二题:明码 第三题:乘积尾零 第四题:测试次数 第五题:快速排序 第六题:递增三元组 第七题:螺旋折线 第八题:日志统计 ...
- UVALive 7501 Business Cycle(二分)题解
题意:n个数,有一个起始值,按顺序从第一个开始不断循环取数,如果取完后相加小于0就变为0,最多取p个数,问你得到大于等于值g所需要的最小起始值为多少 思路:这题目爆long long爆的毫无准备,到处 ...
- 【特性】MySQL 8 新特性
MySQL 8.0 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 注意:从 MySQL 5.7 升级到 MySQL 8 ...
- Shiro学习笔记六(自定义Reaml-使用数据库设置 user roles permissions)
1.工程目录 pom文件还和以前设置的一样就是添加了一个数据库驱动, <dependencies> <dependency> <groupId>junit</ ...
- 单域名下多子域名同时认证HTTPS
参考: http://blog.csdn.net/wzj0808/article/details/53401101 http://www.cnblogs.com/silin6/p/5931640.ht ...
- 转 Failed to run the WC DB work queue associated with 错误的解决
svn 异常终止导致的缓存工作队列问题 解决方法:清空svn的队列 1.下载sqlite3.exe 2.找到你项目的.svn文件,查看是否存在wc.db 3.将sqlite3.exe放到.svn的同级 ...