1. 程式人生 > >Java服務端返回多張圖片到客戶端的解決辦法

Java服務端返回多張圖片到客戶端的解決辦法

    這兩天和其他公司的猿同胞合作完成了一個從服務端返回多張圖片到客戶端的任務。這個事情看似很簡單,但其中有幾個點是很容易犯錯誤的。

    1.服務端返回多張圖片,而不是一張,且具體多少張,客戶端事先不知道。

    我們知道,返回單張圖片時,後臺直接輸出位元組流,前臺直接通過img標籤就可以顯示,然而,多張圖片時,這種方式是不可取的。

    解決辦法是,將每張圖片流進行base64加密,然後迴圈輸出,每次輸出指定一個特定字串,便於前臺獲取後再進行切割顯示,img標籤的src屬性是可以直接載入base64碼解析出圖片。如下,我是根據“&&&”進行分割。

    

    2.IE8不支援tif格式的圖片。

    在網上找了很多資料,IE8要支援tif格式的圖片,有兩種方式:一、在網上下載安裝alternatiffx-1_8_2外掛,然後就可以顯示;二、後臺程式碼將tif格式轉換為jpg。我採用的是第二張方式,需要用到兩個jar包(jai_codec-1.1.3.jar、jai_core.jar),Jar可以在網上下載,關鍵程式碼如下:


    3.後臺發起http請求。

     因為這次的圖片涉及到格式轉換需要在後臺操作,所以,在訪問合作公司的服務端時,採用了後臺發起http請求,然後將返回的加密coder進行轉碼、格式轉換、生成圖片、返回所有圖片路徑、前臺圖片顯示。

    總結,以上是我這次的一些工作心得,因為是第一次寫部落格,如有不到位的地方,還請各位看官不喜勿噴!!!大笑