我有一个基于 Spring Boot 的后端,基于 Angular 5 的前端。通过 Angular 接收 MultiPartFile 后,我想用唯一的名称(表的 id)重命名该文件并将该文件存储到文件夹中,然后放入该文件的 URL到数据库 PostgreSQL。请帮助我,我测试了很多方法都没有任何好的结果。我尝试将 MultiPartFile 转换为文件,但我不知道该怎么做。请帮我
package smart.syndic.metier;
import java.net.MalformedURLException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.StandardCopyOption;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.core.io.Resource;
import org.springframework.core.io.UrlResource;
import org.springframework.stereotype.Service;
import org.springframework.util.FileSystemUtils;
import org.springframework.web.multipart.MultipartFile;
@Service
public class StorageService
{
Logger logger = LoggerFactory.getLogger(this.getClass().getName());
private final Path rootLocation = Paths.get("fichiers/prestataires");
public void store(MultipartFile file) {
try {
Files.copy(file.getInputStream(),
this.rootLocation.resolve(file.getOriginalFilename()),
StandardCopyOption.REPLACE_EXISTING);
} catch (Exception e) {
throw new RuntimeException("FAIL!");
}
} …
Run Code Online (Sandbox Code Playgroud)