Der spezifische Code lautet wie folgt: Paket epoint.mppdb_01.h3c; importiere java.io.File; importiere java.io.FileInputStream; importiere java.io.FileOutputStream; importiere java.io.InputStream; importiere java.io.OutputStream; importiere java.net.URI; importiere java.sql.Blob; importiere java.sql.Connection; importiere java.sql.DriverManager; importiere java.sql.ResultSet; importiere java.sql.Statement; importiere org.apache.commons.net.ftp.FTPClient; importiere org.apache.commons.net.ftp.FTPReply; importiere org.apache.hadoop.conf.Configuration; importiere org.apache.hadoop.fs.FSDataInputStream; importiere org.apache.hadoop.fs.FileSystem; importiere org.apache.hadoop.fs.Path; importiere org.apache.hadoop.io.IOUtils; öffentliche Klasse MySQLblobToMPPphoto { //MySQL-Verbindung öffentliche statische Verbindung getMySQLConnection() löst Exception aus { Zeichenfolge MySQLDRIVER = "com.mysql.jdbc.Driver"; Zeichenfolge MySQLURL = "jdbc:mysql://192.168.186.13:3306/bigdata_scene03_rktj"; Zeichenfolge MySQLUSERNAME = "root"; Zeichenfolge MySQLPASSWORD = "Gepoint"; Verbindung MySQLconn = DriverManager.getConnection(MySQLURL, MySQLUSERNAME, MySQLPASSWORD); MySQLconn zurückgeben; } //MPP-Verbindung öffentliche statische Verbindung getMPPConnection() löst Exception aus { Zeichenfolge MPPDRIVER = "com.MPP.jdbc.Driver"; Zeichenfolge MPPURL = "jdbc:MPP://192.168.186.14:5258/bigdata_scene03_rktj"; Zeichenfolge MPPUSERNAME = "mpp"; Zeichenfolge MPPPASSWORD = "h3c"; Verbindung MPPconn = DriverManager.getConnection(MPPURL, MPPUSERNAME, MPPPASSWORD); MPPconn zurückgeben; } // öffentliche statische void getMySQLblobToHDFS() wirft Ausnahme { Verbindung conn = getMySQLConnection(); Ergebnismenge rs = null; versuchen { String SQL = "Wählen Sie ROW_ID, Foto aus t_rk_baseinfo_blob, Limit 10"; Anweisung prest = conn.prepareStatement(sql); rs = prest.executeQuery(sql); während (rs.next()) { : Die Zeilen-ID wird wie folgt zurückgegeben: Blob-Foto = rs.getBlob(2); System.out.println(row_id + " " + Foto); InputStream in = foto.getBinaryStream(); OutputStream out = neuer FileOutputStream("H:/foto/" + row_id + ".jpg"); int länge = 0; byte[] Puffer = neues Byte[1024]; während ((Länge = in.read(Puffer)) != -1) { out.write(Puffer, 0, Länge); } hochladen("H:/foto/" + row_id + ".jpg"); } prest.schließen(); rs.schließen(); } Fang (Ausnahme e) { e.printStackTrace(); Endlich // Verbindung schließen if (conn != null) { versuchen { Verbindung schließen(); Verbindung = null; } Fang (Ausnahme e) { e.printStackTrace(); } } } } öffentliche statische void main(String[] args) wirft Exception { getMySQLblobToHDFS(); } //HDFS-Anhang hochladen public static void upload(String uploadpath) throws Exception { Konfiguration conf = neue Konfiguration(); URI uri = neue URI("hdfs://192.168.186.14:8020"); Dateisystem fs = FileSystem.get(uri, conf, "HDFS"); Pfad resP = neuer Pfad (Uploadpfad); Pfad destP = neuer Pfad("/Foto"); wenn (!fs.exists(destP)) { fs.mkdirs(ZielP); } fs.copyFromLocalFile(resP, destP); fs.schließen(); System.out.println("************************"); System.out.println("Upload erfolgreich!"); } //HDFS-Anhang herunterladen public static void download() throws Exception { Konfiguration conf = neue Konfiguration(); Zeichenfolge Ziel = "hdfs://192.168.186.14:/photo/11.png"; Zeichenfolge lokal = "D://11.png"; Dateisystem fs = FileSystem.get(URI.create(dest), conf, "hdfs"); FSDataInputStream fsdi = fs.open(neuer Pfad(Ziel)); OutputStream-Ausgabe = neuer FileOutputStream (lokal); IOUtils.copyBytes(fsdi, Ausgabe, 4096, wahr); System.out.println("************************"); System.out.println("Download erfolgreich!"); } } Zusammenfassen Oben ist die Blob-Datenverarbeitungsmethode in MySQL, die ich Ihnen vorgestellt habe. Ich hoffe, sie wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
<<: Tiefgreifendes Verständnis der Rolle von Vuex
>>: Detaillierte Installation und Konfiguration von Subversion (SVN) unter Ubuntu
Betriebsumgebung: MAC Docker-Version: Docker vers...
Umsetzungsprinzip Die Hauptgrafik besteht aus zwe...
Inhaltsverzeichnis Vorwort InnoDB-Speicherarchite...
Verwenden Sie navicat zum Testen und Lernen: Verw...
Vorwort Wenn Bildlaufereignisse wie Scrollen und ...
Mithilfe einiger einfacher Linux-Befehle können S...
einführen Überwacht die Integrität von HTTP-Serve...
Der folgende Fall überprüft die Wissenspunkte der...
1. Spread-Operator Der Spread-Operator besteht au...
Ich habe kürzlich an einem Projekt gearbeitet – B...
Ich habe mir vor kurzem ein Video von einem Auslä...
<br />Original: http://uicom.net/blog/?p=762...
Die Ausführungsbeziehung zwischen dem href-Sprung...
Einleitung Stellt einige einfache und praktische ...
Vorwort Im vorherigen Artikel haben wir hauptsäch...