2013-07-30 126 views
0

我想從電腦我的本地位置顯示圖像,我用這個代碼,它正常工作對我來說,動態顯示圖像

<%@ page import="java.io.*" %> 
<%@page contentType="image/gif" %> 
<% 
    OutputStream o = response.getOutputStream(); 
    InputStream is = new FileInputStream(new File("D:/FTP/ECG/ecg.jpg")); 
    byte[] buf = new byte[32 * 1024]; 
    int nRead = 0; 
    while((nRead=is.read(buf)) != -1) 
    { 
     o.write(buf, 0, nRead); 
    } 

    o.flush(); 
    o.close(); 

%> 

我的問題是,我想用它顯示內容,還有其他東西,比如輸入框和標籤。

+0

就像說,這是一些點正確,並通過HTTP發送你的形象,有什麼比使用本地文件URI更好。只需使用@Uooo答案並創建一個HTML頁面。無論如何,如果您要將圖像存儲在數據庫中,則這是否否,圖像不應存儲在數據庫中。 –

回答

1

您在這裏做的是將圖像傳輸到客戶端。你需要的是一個指向這個圖像的HTML文檔,例如:

<img src="path/to/your/jsp"> 
<p>Some other text</p> 
0

Scriptlets = nono,代碼對它們的可讀性要低得多。儘可能使用JSTL。

要顯示actualy圖像使用HTML標記

<img src="D:/FTP/ECG/ecg.jpg" /> 

讓我們假設你有一個頁面,圖像的列表(從數據庫加載)將被顯示。

在你在準備視圖的方法控制器:

ModelAndView mv = new ModelAndView("yourView"); 
mv.addObject("imageList",imageList); 
return mv; 

圖像列表僅僅是你從數據庫中之前加載的文件名(列表)的列表。

然後在你的JSP這樣做:

<c:forEach items="${imageList}" var="path"> 
    <img src="yourPath/${path} /> 
</c:forEach> 
+0

我想從我的電腦動態顯示圖像,我知道使用img標籤,但我只想指定d:/ ftp/ecg,圖像名稱來自數據庫,並從本地pc路徑顯示該圖像 –

+0

I'相應地編輯了我的答案。 – Lenymm

+0

我的本地路徑不能直接在Eclipse中工作,如果我給本地路徑,那麼不能顯示任何東西 –