Я пытаюсь записать загруженный многостраничный файл в файловую систему. У меня есть каталог под названием audio, который находится в корне моего веб-приложения (а не внутри WEB-INF, но рядом с ним, для него общедоступно, например, css и javascript).
Я хочу записать загруженный файл в этот каталог, но я не могу найти путь, который мне нужен. Я думал, что получить ServletContext(), тогда использование realPath() может работать, но у меня нет ссылки на ServletContext через контроллер Spring. Спасибо за любой hep
@RequestMapping(value="/uploadSample")
public ModelAndView upload(HttpServletRequest request, HttpServletResponse response, @RequestParam("file") MultipartFile f) {
if (f == null) {
return new ModelAndView("upload", "msg", "The file is null.");
}
try {
// I need to set AUDIO_PATH to <webAppRoot>/audio
FileOutputStream file = new FileOutputStream(AUDIO_PATH + "/" + f.getOriginalFilename());
file.write(f.getBytes());
file.close();
}
catch (FileNotFoundException ex) {
Logger.getLogger(SampleUploadController.class.getName()).log(Level.SEVERE, null, ex);
}
catch (IOException ex) {
Logger.getLogger(SampleUploadController.class.getName()).log(Level.SEVERE, null, ex);
}
return new ModelAndView("upload", "msg", "File ( " + f.getOriginalFilename() + ") successfully uploaded.");
}
}