首頁  >  文章  >  資料庫  >  如何在 Java 中將 Blob 轉換為 BufferedImage?

如何在 Java 中將 Blob 轉換為 BufferedImage?

Linda Hamilton
Linda Hamilton原創
2024-11-09 17:03:02204瀏覽

How to Convert a Blob into a BufferedImage in Java?

如何將 BufferedInputStream 轉換為映像?

原始問題:

我在將 blob 轉換為影像時遇到困難緩衝影像。我正在從資料庫中以 blob 形式檢索 JPG 圖像,但使用 BufferedImage 轉換為圖像會傳回 null。如何解決此問題?

解決方案:

  • 透過使用 ImageIO.write 寫出 uploadedInputStream 來驗證是否包含有效映像。
  • 確保 Blob#length 傳回與 Blob#getBytes 相容的值。在這種情況下,Blob#length 傳回一個 long,而 Blob#getBytes 需要一個 int,這可能會導致截斷。
  • 考慮使用 getBinaryStream 而不是 getBytes 來檢索 blob 內容,因為 getBinaryStream 更適合 blob未儲存在記憶體中。

其他注意事項:

  • 提供的程式碼不處理 ImageIO.read 引發的潛在異常。確保異常得到妥善處理或傳播給呼叫者。
  • 為了進一步調試,請提供有關輸入資料的更多信息,例如其大小和格式。
  • 請參閱用於正確檢索和處理 blob 的資料庫庫。

以上是如何在 Java 中將 Blob 轉換為 BufferedImage?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn