|
@@ -43,19 +43,24 @@ public class WebMvcConfig implements WebMvcConfigurer {
|
|
|
|
|
|
@Override
|
|
|
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
|
|
|
- MappingJackson2HttpMessageConverter jackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter();
|
|
|
-
|
|
|
ObjectMapper objectMapper = new ObjectMapper();
|
|
|
- /**
|
|
|
- * 序列换成json时,将所有的long变成string
|
|
|
- * 因为js中得数字类型不能包含所有的java long值
|
|
|
- */
|
|
|
+ objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
|
|
|
+ objectMapper.enable(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT);
|
|
|
+
|
|
|
+ objectMapper.setTimeZone(TimeZone.getTimeZone("GMT+8"));
|
|
|
+ //objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
|
|
|
+
|
|
|
+ // 处理数字位数超过JS默认最大数字时精度差异问题
|
|
|
SimpleModule simpleModule = new SimpleModule();
|
|
|
+ simpleModule.addSerializer(BigInteger.class, ToStringSerializer.instance);
|
|
|
simpleModule.addSerializer(Long.class, ToStringSerializer.instance);
|
|
|
- simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance);
|
|
|
+
|
|
|
objectMapper.registerModule(simpleModule);
|
|
|
|
|
|
- jackson2HttpMessageConverter.setObjectMapper(objectMapper);
|
|
|
- converters.add(jackson2HttpMessageConverter);
|
|
|
+ for (HttpMessageConverter<?> c : converters) {
|
|
|
+ if (c instanceof MappingJackson2HttpMessageConverter) {
|
|
|
+ ((MappingJackson2HttpMessageConverter) c).setObjectMapper(objectMapper);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|