(springmvc)從oracle讀取blob類型圖片並在jsp中顯示

來源:互聯網
上載者:User

標籤:

        最近工作中遇到從資料庫中讀取blob類型的圖片,並在頁面顯示的問題,想了下,大概有兩種方式,一是將資料轉換成檔案,儲存在本地,然後將檔案地址傳到前台頁面,讀取儲存的圖片檔案;二是將檔案轉換成資料流,直接在頁面顯示,我覺得第二個方法比較簡單,而且處理速度更快點。下面我將我的操作過程記錄下來,給大家一個參考。

        思路、步驟:

        1:從資料庫讀取blob圖片

        2:轉換成資料流

        3:顯示在頁面


首先,我們在springmvc中建立一個controller方法

@RequestMapping("/toolUtil/")public class ToolUtil{    @AutoWired    private ToolUtilManager toolUtilManager;//持久層    /**     * 擷取圖片     * @param request     * @param response     */    @RequestMapping("getPhoto_Blob")    public void getPhoto_Blob(HttpServletRequest request,HttpServletResponse response){    String id = request.getParameter("id");    //這個我就不詳細寫了,就是通過傳遞的id查詢你要顯示的圖片    Map resultMap = toolUtilManager.getPhoto_Blob(id)    //blob就是你要顯示的那張圖片    Blob blob = (Blob) resultMap.get("Photo");    InputStream in = null;try {    in = blob.getBinaryStream();    OutputStream out = response.getOutputStream();        data = new byte[(int)blob.length()];        int i = 0;    while((i=in.read(data))!=-1){       out.write(data);    }    out.close();    in.close();} catch (Exception e) {    e.printStackTrace();}    }    }

好了,這就是controller裡的方法,這幾行程式碼完成步驟1和步驟2,下面我們要在頁面顯示

<!-- 擷取id為1的blob類型圖片,定義寬128,高185 --><img src="<%=request.getContextPath()%>/toolUtil/getPhoto_Blob.xhtml?id=1" width="128" height="185"/>

步驟3就完成了,現在你的圖片就可以在頁面顯示了,簡單方便。


代碼手打,難免有漏字、錯字、描述不清現象,歡迎大家批評指教,切勿人身攻擊,如果覺得有用,就告訴我一聲,給我點鼓勵。


(springmvc)從oracle讀取blob類型圖片並在jsp中顯示

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.