WebApiConfig.java 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package cn.efunbox.base.configuration;
  2. import org.springframework.context.annotation.Configuration;
  3. import org.springframework.http.converter.HttpMessageConverter;
  4. import org.springframework.web.servlet.config.annotation.CorsRegistry;
  5. import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
  6. import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
  7. import java.util.List;
  8. @Configuration
  9. public class WebApiConfig extends WebMvcConfigurationSupport {
  10. /* @Bean
  11. public MappingJackson2HttpMessageConverter customJackson2HttpMessageConverter() {
  12. MappingJackson2HttpMessageConverter jsonConverter = new MappingJackson2HttpMessageConverter();
  13. ObjectMapper objectMapper = new ObjectMapper();
  14. objectMapper.configure(
  15. DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
  16. objectMapper.getSerializerProvider().setNullValueSerializer(
  17. new JsonSerializer<Object>() {
  18. @Override
  19. public void serialize(Object value, JsonGenerator jgen,
  20. SerializerProvider provider) throws IOException,
  21. JsonProcessingException {
  22. jgen.writeString("");
  23. }
  24. });
  25. // 进行HTML解码
  26. objectMapper.registerModule(new SimpleModule().addSerializer(
  27. String.class, new JsonSerializer<String>() {
  28. @Override
  29. public void serialize(String value, JsonGenerator jgen,
  30. SerializerProvider provider) throws IOException,
  31. JsonProcessingException {
  32. jgen.writeString(StringEscapeUtils.unescapeHtml4(value));
  33. }
  34. }));
  35. jsonConverter.setObjectMapper(objectMapper);
  36. return jsonConverter;
  37. }*/
  38. @Override
  39. public void configureMessageConverters(
  40. List<HttpMessageConverter<?>> converters) {
  41. super.addDefaultHttpMessageConverters(converters);
  42. }
  43. @Override
  44. public void addCorsMappings(CorsRegistry registry) {
  45. registry.addMapping("/**")
  46. .allowedOrigins("*")
  47. .allowedMethods("GET", "POST", "PUT", "OPTIONS", "DELETE", "PATCH")
  48. .allowCredentials(true).maxAge(3600);
  49. }
  50. /**
  51. * 配置servlet处理
  52. */
  53. @Override
  54. public void configureDefaultServletHandling(
  55. DefaultServletHandlerConfigurer configurer) {
  56. configurer.enable();
  57. }
  58. }