Я пишу проект Spring MVC на Eclipse. Я застрял при кодировании функции загрузки изображения. Клиентская сторона использует HTML5 API для чтения и отправки многокомпонентного файла на сервер. Следующий код был использован для сохранения изображения на сервере.
@RequestMapping(method = RequestMethod.POST)
public void processUpload(@RequestParam("pic") MultipartFile file) throws IOException {
// if (!result.hasErrors()) {
FileOutputStream outputStream = null;
String filePath = System.getProperty("java.io.tmpdir") + "/" + file.getOriginalFilename();
try {
outputStream = new FileOutputStream(new File(filePath));
outputStream.write(file.getInputStream().read());
outputStream.close();
} catch (Exception e) {
System.out.println("Error while saving file");
Файл отправляется на сервер и продолжается, но имя файла - не оригинальное имя файла, а некоторая случайная строка, созданная Java. Я нашел этот файл в apache-tomcat-6.0.26 \ work \ Catalina \ localhost \ с таким именем: upload__f20d9c4_1357767c999__7ffe_00000001. Файл тогда исчезнет.
Мой вопрос: куда ушел файл и как правильно записать загруженный файл в какую-то папку, например / uploads, а не сохранить во временную папку?
Я новичок, так что, пожалуйста, поправьте меня, если я написал неправильно: D