2012-06-21 73 views
0

我的web應用程序使用jsp/javascripts編寫。後端Java。設法實現代碼保存圖像以外的應用程序,因爲我不想保存在webapp/images文件夾中的圖像(因爲當服務器關閉,當重建應用程序,我失去了這些保存的圖像)。我想要的是從我的Web應用程序中再次訪問保存在本地目錄中的圖像,但我不知道該如何操作。如何訪問我的本地文件夾,從碼頭服務器和碼頭服務器在同一本地計算機上運行...從在jetty中運行的web應用程序訪問本地目錄圖像

回答

1

獲取路徑/image

getServletContext().getRealPath("/images"); 

存儲&讀取文件,即使你可以讀從外部位置的文件從你的servlet

File image = new File("d:\\image\1.jpg"); 
    response.setBufferSize(DEFAULT_BUFFER_SIZE); 
    response.setContentType(contentType); 
    response.setHeader("Content-Length", String.valueOf(image.length())); 
    response.setHeader("Content-Disposition", "inline; filename=\"" + image.getName() + "\""); 

    BufferedInputStream input = null; 
    BufferedOutputStream output = null; 

    try { 
     // Open streams. 
     input = new BufferedInputStream(new FileInputStream(image), DEFAULT_BUFFER_SIZE); 
     output = new BufferedOutputStream(response.getOutputStream(), DEFAULT_BUFFER_SIZE); 

     // Write file contents to response. 
     byte[] buffer = new byte[DEFAULT_BUFFER_SIZE]; 
     int length; 
     while ((length = input.read(buffer)) > 0) { 
      output.write(buffer, 0, length); 
     } 
    } finally { 
     // Gently close streams. 
     close(output); 
     close(input); 
    } 

請參見

+0

可以說,我的形象是在d:/ images文件夾和我在同一臺機器上運行Jetty服務器。我如何訪問我的本地文件夾(D:/ images)? – ghTvNath

相關問題