Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie konvertiere ich einen Blob in ein BufferedImage in Java?

Linda Hamilton
Freigeben: 2024-11-09 17:03:02
Original
201 Leute haben es durchsucht

How to Convert a Blob into a BufferedImage in Java?

Wie konvertiere ich BufferedInputStream in ein Bild?

Ursprüngliche Frage:

Ich habe Schwierigkeiten, einen Blob in ein Bild umzuwandeln ein gepuffertes Bild. Ich rufe ein JPG-Bild als Blob aus meiner Datenbank ab, aber die Konvertierung in ein Bild mithilfe von BufferedImage gibt Null zurück. Wie kann ich dieses Problem beheben?

Lösung:

  • Überprüfen Sie, ob der hochgeladeneInputStream ein gültiges Bild enthält, indem Sie es mit ImageIO.write ausschreiben.
  • Stellen Sie sicher, dass Blob#length einen mit Blob#getBytes kompatiblen Wert zurückgibt. In diesem Fall gibt Blob#length einen Long-Wert zurück, während Blob#getBytes einen Int-Wert erwartet, was zu einer Kürzung führen kann.
  • Erwägen Sie die Verwendung von getBinaryStream anstelle von getBytes, um den Blob-Inhalt abzurufen, da getBinaryStream besser für Blobs geeignet ist die nicht im Speicher gespeichert sind.

Zusätzlich Überlegungen:

  • Der bereitgestellte Code behandelt die potenzielle Ausnahme, die von ImageIO.read ausgelöst wird, nicht. Stellen Sie sicher, dass die Ausnahme ordnungsgemäß behandelt oder an den Aufrufer weitergegeben wird.
  • Für weitere Debugging-Vorgänge geben Sie weitere Informationen zu den Eingabedaten an, z. B. deren Größe und Format.
  • Lesen Sie die Dokumentation von Datenbankbibliothek, die Sie verwenden, um Blobs korrekt abzurufen und zu verarbeiten.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen Blob in ein BufferedImage in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage