1、文件上传代码
@Transactional(rollbackFor=Exception.class)
public String uploadFile(MultipartFile file,FileVo fileVo) throws Exception{
//按日期目录存放
String trsfilename = DateTimeUtil.getDateTime("yyyyMMddHHmmssSSS");
String fileName = file.getOriginalFilename();
String fileSavePath = savePath + "/" + trsfilename.substring(0, 4)
+ "/" + trsfilename.substring(4, 6)
+ "/" + trsfilename.substring(6, 8);
//判断目录是否存在,不存在则创建目录
File dir = new File(fileSavePath);
if (!dir.exists()) {
dir.mkdirs();
}
File dest = new File(fileSavePath +"/"+ fileName);
file.transferTo(dest);
logger.info("上传成功");
return "上传成功";
}
2、允许跨域请求的Filter配置
package com.njwd.costconfig.aop;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
@Configuration
public class Corsconfig {
private CorsConfiguration buildConfig() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.setAllowCredentials(true);
corsConfiguration.addAllowedOrigin("*");
corsConfiguration.addAllowedHeader("*");
corsConfiguration.addAllowedMethod("*");
return corsConfiguration;
}
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", buildConfig());
return new CorsFilter(source);
}
}