线上环境新建文件BUG修复
This commit is contained in:
parent
2a1c41ae98
commit
cb30e91944
@ -45,6 +45,8 @@ import org.slf4j.Logger;
|
|||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.core.io.ResourceLoader;
|
||||||
|
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
|
||||||
import org.springframework.util.ClassUtils;
|
import org.springframework.util.ClassUtils;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@ -81,6 +83,9 @@ public class FileController {
|
|||||||
AsyncTaskComp asyncTaskComp;
|
AsyncTaskComp asyncTaskComp;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ElasticsearchClient elasticsearchClient;
|
private ElasticsearchClient elasticsearchClient;
|
||||||
|
@Autowired
|
||||||
|
private ResourceLoader resourceLoader;
|
||||||
|
|
||||||
@Value("${ufop.storage-type}")
|
@Value("${ufop.storage-type}")
|
||||||
private Integer storageType;
|
private Integer storageType;
|
||||||
|
|
||||||
@ -125,15 +130,19 @@ public class FileController {
|
|||||||
// System.out.println("ClassUtils.getDefaultClassLoader() = " + ClassUtils.getDefaultClassLoader().getResource("st"));
|
// System.out.println("ClassUtils.getDefaultClassLoader() = " + ClassUtils.getDefaultClassLoader().getResource("st"));
|
||||||
// System.out.println("ClassUtils.getDefaultClassLoader().getResource(\"static\") = " + ClassUtils.getDefaultClassLoader().getResource("static"));
|
// System.out.println("ClassUtils.getDefaultClassLoader().getResource(\"static\") = " + ClassUtils.getDefaultClassLoader().getResource("static"));
|
||||||
String separatorInfo = File.separator;
|
String separatorInfo = File.separator;
|
||||||
String url2 = getMubanFile("static" + separatorInfo + templateFilePath.replace("/", separatorInfo));
|
//Spring提供了ResourceLoader接口,它可以用来加载资源。
|
||||||
|
PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(resourceLoader);
|
||||||
|
org.springframework.core.io.Resource resource = resolver.getResource("classpath:static/" + templateFilePath.replace("/", separatorInfo));
|
||||||
|
String url2 = resource.getURL().getPath();
|
||||||
LOGGER.info("--->>模板文件所在的路径是:{}", url2);
|
LOGGER.info("--->>模板文件所在的路径是:{}", url2);
|
||||||
System.out.println("url2 = " + url2);
|
System.out.println("url2 = " + url2);
|
||||||
url2 = URLDecoder.decode(url2, "UTF-8");
|
url2 = URLDecoder.decode(url2, "UTF-8");
|
||||||
FileInputStream fileInputStream = new FileInputStream(url2);
|
// FileInputStream fileInputStream = new FileInputStream(url2);
|
||||||
Copier copier = ufopFactory.getCopier();
|
Copier copier = ufopFactory.getCopier();
|
||||||
CopyFile copyFile = new CopyFile();
|
CopyFile copyFile = new CopyFile();
|
||||||
copyFile.setExtendName(extendName);
|
copyFile.setExtendName(extendName);
|
||||||
String fileUrl = copier.copy(fileInputStream, copyFile);
|
//直接获取resource中的输入流,通过new FileInputStream(url2)会报 No such file or directory
|
||||||
|
String fileUrl = copier.copy(resource.getInputStream(), copyFile);
|
||||||
|
|
||||||
FileBean fileBean = new FileBean();
|
FileBean fileBean = new FileBean();
|
||||||
fileBean.setFileId(IdUtil.getSnowflakeNextIdStr());
|
fileBean.setFileId(IdUtil.getSnowflakeNextIdStr());
|
||||||
@ -167,18 +176,6 @@ public class FileController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* user.dir默认会定位到你的工程根目录,但是web项目不行如果是web项目会定位到tomcat的bin目录
|
|
||||||
*
|
|
||||||
* @param fileName
|
|
||||||
*/
|
|
||||||
public String getMubanFile(String fileName) {
|
|
||||||
String rootPath = System.getProperty("user.dir");
|
|
||||||
String fenge = File.separator;
|
|
||||||
//找寻这个路径下边的 /src/main/resources/ Windows跟Linux环境分割符号不同
|
|
||||||
return rootPath + fenge + "src" + fenge + "main" + fenge + "resources" + fenge + fileName;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Operation(summary = "创建文件夹", description = "目录(文件夹)的创建", tags = {"file"})
|
@Operation(summary = "创建文件夹", description = "目录(文件夹)的创建", tags = {"file"})
|
||||||
@RequestMapping(value = "/createFold", method = RequestMethod.POST)
|
@RequestMapping(value = "/createFold", method = RequestMethod.POST)
|
||||||
@MyLog(operation = "创建文件夹", module = CURRENT_MODULE)
|
@MyLog(operation = "创建文件夹", module = CURRENT_MODULE)
|
||||||
|
Loading…
Reference in New Issue
Block a user