@JsonFormat 时区不对
使用@JsonFormat 可以很方便的将一个对象的某些属性查出来返回给页面。
例如
/**
* 放款日期
*/
@JacksonXmlProperty(localName = "LOAN_ACTV_DT")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
private Date loanActvDt;
这样一来 我们就能得到一个以年月日格式化后的时间展示出来。
不过@JsonFormat 默认的时区是Greenwich Time, 默认的是格林威治时间,而我们是在东八区上,所以时间会比实际我们想得到的时间少八个小时,经常因为这八个小时导致时间 实际上是 十二月十二日,格式化后显示出来的却是十一日。
打开注解源码,发现有一个属性
所以 我们只需要在注释里写上时区就可以了。
/**
* 放款日期
*/
@JacksonXmlProperty(localName = "LOAN_ACTV_DT")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date loanActvDt;
这样一来时区问题就解决了。同理,可以支持任何时区。只需要修改timezone即可。
还没有评论,来说两句吧...