我们再用ES存入Java时间的date类型的时候,默认ES会自动转成timestamp。
要解决这个问题,可以采用时间类型的注解
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
ES的存入对象标记为@document,则再存入的是时候可以采用IndexQuery对象然后setObject就行了。此时ES再序列化的时候次采用的是JACKSON。
但是只标记上面注解会造成时区问题。所以完整解决问题需要加入一个指定时区
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private Date createTime;