2013-12-21 3 views
5

Я пытаюсь загрузить изображение в папку в свой ресурс "/resouces/images/demo.jpg", но он не может работать. Можете ли вы загрузить весну на свой ресурс mvc. Если я загружу до "C://test//demo.jpg", все в порядке. Мой пример:Загрузить изображение в папку весной mvc

String filename = File.separator + "resources" 
         + File.separator + "images" + File.separator 
         + filea.getOriginalFilename(); 
    outputStream = new FileOutputStream(filename); 
    int readBytes = 0; 
    byte[] buffer = new byte[8192]; 
    while ((readBytes = inputStream.read(buffer, 0, 8192)) != -1) { 
     System.out.println("===ddd======="); 
     outputStream.write(buffer, 0, readBytes); 
    } 
+0

Что происходит, когда вы пытаетесь загрузить изображение на '/ ресурсы/images'? Вы видите ошибку? Что говорят журналы? '/ resources/images' должен быть реальным путем, который существует в файловой системе, и его нужно будет записать в ваше приложение. –

+0

У вас есть папка с именем «resources» в 'c:' (или диск, с которого запускается сервер), содержащий подпапку «images»? –

+0

@WillKeeling: У меня есть эта папка в моем проекте, 'webapp/resources/images' –

ответ

6

Вводят ServletContext, как и любой другой боб

@Autowired 
ServletContext servletContext 

затем использования

String webappRoot = servletContext.getRealPath("/"); 
    String relativeFolder = File.separator + "resources" + File.separator 
          + "images" + File.separator 
    String filename = webappRoot + relativeFolder 
         + filea.getOriginalFilename(); 
+0

OMG ... Он работает .. спасибо ... –

Смежные вопросы