WebConfig.java 1.5 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package com.qqflow.engine.config;
  2. import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
  3. import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
  4. import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
  5. import org.springframework.context.annotation.Bean;
  6. import org.springframework.context.annotation.Configuration;
  7. import org.springframework.web.servlet.config.annotation.CorsRegistry;
  8. import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
  9. import java.time.format.DateTimeFormatter;
  10. @Configuration
  11. public class WebConfig implements WebMvcConfigurer {
  12. private static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
  13. @Bean
  14. public Jackson2ObjectMapperBuilderCustomizer jsonCustomizer() {
  15. return builder -> builder
  16. .serializers(new LocalDateTimeSerializer(DATE_TIME_FORMATTER))
  17. .deserializers(new LocalDateTimeDeserializer(DATE_TIME_FORMATTER));
  18. }
  19. @Override
  20. public void addCorsMappings(CorsRegistry registry) {
  21. registry.addMapping("/**")
  22. .allowedOriginPatterns("*")
  23. .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
  24. .allowedHeaders("*")
  25. .allowCredentials(true)
  26. .maxAge(3600);
  27. }
  28. // 文件下载不再通过静态资源映射公开访问,统一走 FileDownloadController 做权限校验
  29. }