经测试发现将对象转JSON时,日期类型的返回的值总是比数据库中的值少1
如 数据库的日期为:2017-12-12,转JSON返回时将变成了2017-12-1。
解决方法1:
在对象POJO的get方法中使用@JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
如:private Date shenqrq; // 申请日期
/*timeZone="GMT+8"加上时区 */
** @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")**
public Date getShenqrq() {
return shenqrq;
}
public void setShenqrq(Date shenqrq) {
this.shenqrq = shenqrq;
}
解决方法2:
mvc:annotation-driven
mvc:message-converters
<bean
class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper">
<bean class="com.fasterxml.jackson.databind.ObjectMapper">
<!-- 处理responseBody 里面日期类型 -->
<property name="dateFormat">
<bean class="java.text.SimpleDateFormat">
<constructor-arg type="java.lang.String" value="yyyy-MM-dd HH:mm:ss" />
</bean>
</property>
<!-- 时区指定 -->
<property name="timeZone" value="GMT+8" />
<!-- 为null字段时不显示 -->
<property name="serializationInclusion">
<value type="com.fasterxml.jackson.annotation.JsonInclude.Include">NON_NULL</value>
</property>
</bean>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
Jackson返回JSON时日期少一天
原创cqs_jition ©著作权
©著作权归作者所有:来自51CTO博客作者cqs_jition的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:LINUX查看SVN安装路径
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
java条件判断题:判断这一天是当年的第几天
从键盘分别输入年、月、日,判断这一天是当年的第几天
System switch语句 条件判断