sql >> Database >  >> RDS >> Mysql

Afbeeldingen uit de MySQL-database weergeven op een enkele kolom van JTable

Omdat je preparedstatement.setBlob(1, InputStream); . hebt gebruikt om de afbeelding op te slaan, moet ik aannemen dat je het fysieke afbeeldingsbestand/-formaat hebt opgeslagen en niet alleen de pixelgegevens.

U moet dit afbeeldingsformaat teruglezen en converteren naar een ondersteund afbeeldingsformaat voor Swing/Java.

Begin met het verkrijgen van een Blob verwijzing naar het databaseveld...

Blob blob = rs.getBlob(1);

Zodra je een Blob . hebt , kunt u de binaire InputStream . gebruiken en lees de gegevens...

BufferedImage image = null;
try (InputStream is = blob.getBinaryStream()) {
    image = ImageIO.read(is);
} catch (IOException exp) {
    exp.printStackTrace();
}

Nu kunt u er een ImageIcon van maken met behulp van new ImageIcon(image) en zet dit in je tafelmodel...




  1. Hoe de huidige rij vergelijken met de volgende en vorige rij in PostgreSQL?

  2. Sterrenschema versus sneeuwvlokschema

  3. Wat zijn de BIN$...-tabellen in de ALL_TAB_COLUMNS-tabel van Oracle?

  4. Hoe een unieke sleutel uit de mysql-tabel te verwijderen