WebMvcConfig 全局设置时间服务器时区
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
MappingJackson2HttpMessageConverter jackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter();
ObjectMapper objectMapper = jackson2HttpMessageConverter.getObjectMapper();
//json中多余的参数不报错,不想要可以改掉
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
//设置全局的时间转化
// SimpleDateFormat smt = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
// objectMapper.setDateFormat(smt);
// objectMapper.setTimeZone(TimeZone.getTimeZone(“GMT+”+getTimeZone()));//解决时区差8小时问题
objectMapper.setTimeZone(TimeZone.getTimeZone("GMT+"+ DateUtil.getTimeZone()));//解决时区差8小时问题
jackson2HttpMessageConverter.setObjectMapper(objectMapper);
converters.add(0, jackson2HttpMessageConverter);
public static String getTimeZone(){
Calendar cal = Calendar.getInstance();
int offset = cal.get(Calendar.ZONE_OFFSET);
cal.add(Calendar.MILLISECOND, -offset);
Long timeStampUTC = cal.getTimeInMillis();
Long timeStamp = System.currentTimeMillis();
Long timeZone = (timeStamp - timeStampUTC) / (1000 * 3600);
System.out.println(String.valueOf(timeZone));
return String.valueOf(timeZone);
}