今天在开发中遇到一个问题,明明在数据库中查询到的时间类型是正常的,到前端页面上展示到时候变成了一堆数字。后来发现这是因为mybatis自动把查询出来的时间转换成了别的类型,好像网上说是叫"”unix long时间eg:1503912320000”的类型,很奇怪,后来上网查了一下资料,只需要在实体相应的字段的get方法上加上一个注解便可解决问题:
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") //防止从mybatis查询出现unix long时间eg:1503912320000,而不是时间格式。 Update by :linsong.wei 2017-11-12 18:42:54 public Date getLaLendTime() { return laLendTime; } public void setLaLendTime(Date laLendTime) { this.laLendTime = laLendTime; } @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") public Date getLaReturnTime() { return laReturnTime; } public void setLaReturnTime(Date laReturnTime) { this.laReturnTime = laReturnTime; }
只需在getter方法上面加一个@JsonFormat,并设置它的格式,即可解决这个问题。