preparedstatement.setBlob(1, InputStream);
を使用したため 画像を保存するには、ピクセルデータだけでなく、物理的な画像ファイル/形式を保存したと想定する必要があります。
この画像形式を読み戻し、Swing/Javaでサポートされている画像形式に変換する必要があります。
Blob
を取得することから始めます データベースフィールドへの参照...
Blob blob = rs.getBlob(1);
Blob
を取得したら 、バイナリのInputStream
を使用できます データを読み取ります...
BufferedImage image = null;
try (InputStream is = blob.getBinaryStream()) {
image = ImageIO.read(is);
} catch (IOException exp) {
exp.printStackTrace();
}
これで、ImageIcon
にすることができます new ImageIcon(image)
を使用する これをテーブルモデル内に配置します...