1.添加了@EnableWebMvc,需要手动添加相关配置,swagger页面问题,出现Unable to render this definition The provided definition does not specify a valid version field. Please indicate a valid Swagger or OpenAPI version field. Supported version fields are swagger: "2.0" and those that match openapi: 3.0.n (for example, openapi: 3.0.0)需要先确保:
//下面的转换器添加顺序不能乱
converters.add(new ByteArrayHttpMessageConverter());
converters.add(new MappingJackson2HttpMessageConverter(objectMapper));
converters.add(new StringHttpMessageConverter());
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
ObjectMapper objectMapper = new ObjectMapper();
SimpleModule simpleModule = new SimpleModule();
//处理包装类型
simpleModule.addSerializer(Long.class, ToStringSerializer.instance);
// 处理基本类型long(非包装类)
simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance);
objectMapper.registerModule(simpleModule);
// 设置时区为 GMT+8
objectMapper.setTimeZone(TimeZone.getTimeZone("GMT+8"));
// 启用循环引用处理
objectMapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
// 忽略类中不存在的字段
objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
//下面的转换器添加顺序不能乱
converters.add(new ByteArrayHttpMessageConverter());
converters.add(new MappingJackson2HttpMessageConverter(objectMapper));
converters.add(new StringHttpMessageConverter());
}