JSP 獲取本地圖片的實(shí)例詳解
IE當(dāng)前7以上版本不支持直接在src上寫(xiě)本地硬盤(pán)地址來(lái)顯示圖片。因?yàn)槲覀冎挥型ㄟ^(guò)后臺(tái)在response中讀到二進(jìn)制流的方式來(lái)在前臺(tái)顯示圖片。
具體代碼如下:
public void showPicture(){
String id = ServletActionContext.getRequest().getParameter("id");//前臺(tái)傳來(lái)的存圖片路徑實(shí)體類(lèi)的主鍵id
HttpServletResponse response = ServletActionContext.getResponse();//struts2獲取response
if(id != null !"".equals(id)){
this.classicCases = this.classicCasesManager.findClassicCasesById(id);
String pic_path = this.classicCases.getImagesLocalPath();//圖片路徑
FileInputStream is;
try {
is = new FileInputStream(pic_path);
int i = is.available(); // 得到文件大小
byte data[] = new byte[i];
is.read(data); // 讀數(shù)據(jù)
is.close();
response.setContentType("image/*"); // 設(shè)置返回的文件類(lèi)型
OutputStream toClient = response.getOutputStream(); // 得到向客戶端輸出二進(jìn)制數(shù)據(jù)的對(duì)象
toClient.write(data); // 輸出數(shù)據(jù)
toClient.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
jsp頁(yè)面很簡(jiǎn)單,路徑格式為,http://localhost:8080/projectName/*.action:prama=XXX
img alt="" id="images" src="%=basePath %>ClassicCasesAction!showPicture.action?id=${classicCases.id}">
如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
您可能感興趣的文章:- JSP實(shí)用教程之簡(jiǎn)易圖片驗(yàn)證碼的實(shí)現(xiàn)方法(附源碼)
- jsp中點(diǎn)擊圖片彈出文件上傳界面及實(shí)現(xiàn)預(yù)覽實(shí)例詳解
- java實(shí)現(xiàn)圖片上加文字水?。⊿pringMVC + Jsp)
- JSP中圖片的上傳與顯示方法實(shí)例詳解
- Jsp中如何讓圖片在div中居中
- 解決圖片路徑中含有中文在jsp下不能正常顯示問(wèn)題
- Servlet+Jsp實(shí)現(xiàn)圖片或文件的上傳功能具體思路及代碼