我们在使用springmvc中的 @ResponseBody 注解往前端返回JSON数据的时候发现时间总是一串数字,这里总结使用的两种解决时间格式问题的方法。


1、在时间字段的get方法上使用注解

@JsonFormat(pattern ="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")

这样前端获取的时间就是你设置的时间格式。但是这种方法是个体力活,每个时间类型的字段你都需要给加上这个注解。


2、通过在spring xml配置文件里配置Json转换器设置时间格式 

@Component("jacksonObjectMapper") 与配置文件里的ref指向名称相对应

public class CustomObjectMapper extends ObjectMapper {

private static final long serialVersionUID = 1L;

@PostConstruct

public void afterPropertiesSet() throws Exception {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

setDateFormat(sdf);

}

}
spring的xml文件配置

<mvc:annotation-driven>
        <mvc:message-converters>     
            <beans:bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                <beans:property name="objectMapper" ref="jacksonObjectMapper"/>
                <property name="supportedMediaTypes">
                    <list>
                        <value>application/json;charset=UTF-8</value>
                    </list>
                </property>
            </beans:bean>         
        </mvc:message-converters>
    </mvc:annotation-driven>
posted on 2017-10-28 17:59  伊人撩月  阅读(3249)  评论(0编辑  收藏  举报