mysql中怎么处理blob数据
今天就跟大家聊聊有关mysql中怎么处理blob数据,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
具体代码如下所示:
packageepoint.mppdb_01.h4c;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.InputStream;importjava.io.OutputStream;importjava.net.URI;importjava.sql.Blob;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.Statement;importorg.apache.commons.net.ftp.FTPClient;importorg.apache.commons.net.ftp.FTPReply;importorg.apache.hadoop.conf.Configuration;importorg.apache.hadoop.fs.FSDataInputStream;importorg.apache.hadoop.fs.FileSystem;importorg.apache.hadoop.fs.Path;importorg.apache.hadoop.io.IOUtils;publicclassMySQLblobToMPPphoto{//MySQL连接publicstaticConnectiongetMySQLConnection()throwsException{StringMySQLDRIVER="com.mysql.jdbc.Driver";StringMySQLURL="jdbc:mysql://192.168.186.13:3306/bigdata_scene03_rktj";StringMySQLUSERNAME="root";StringMySQLPASSWORD="Gepoint";ConnectionMySQLconn=DriverManager.getConnection(MySQLURL,MySQLUSERNAME,MySQLPASSWORD);returnMySQLconn;}//MPP连接publicstaticConnectiongetMPPConnection()throwsException{StringMPPDRIVER="com.MPP.jdbc.Driver";StringMPPURL="jdbc:MPP://192.168.186.14:5258/bigdata_scene03_rktj";StringMPPUSERNAME="mpp";StringMPPPASSWORD="h4c";ConnectionMPPconn=DriverManager.getConnection(MPPURL,MPPUSERNAME,MPPPASSWORD);returnMPPconn;}//publicstaticvoidgetMySQLblobToHDFS()throwsException{Connectionconn=getMySQLConnection();ResultSetrs=null;try{Stringsql="selectROW_ID,photofromt_rk_baseinfo_bloblimit10";Statementprest=conn.prepareStatement(sql);rs=prest.executeQuery(sql);while(rs.next()){introw_id=rs.getInt(1);Blobphoto=rs.getBlob(2);System.out.println(row_id+""+photo);InputStreamin=photo.getBinaryStream();OutputStreamout=newFileOutputStream("H:/photo/"+row_id+".jpg");intlen=0;byte[]buffer=newbyte[1024];while((len=in.read(buffer))!=-1){out.write(buffer,0,len);}upload("H:/photo/"+row_id+".jpg");}prest.close();rs.close();}catch(Exceptione){e.printStackTrace();}finally{//关闭连接if(conn!=null){try{conn.close();conn=null;}catch(Exceptione){e.printStackTrace();}}}}publicstaticvoidmain(String[]args)throwsException{getMySQLblobToHDFS();}//HDFS附件上传publicstaticvoidupload(Stringuploadpath)throwsException{Configurationconf=newConfiguration();URIuri=newURI("hdfs://192.168.186.14:8020");FileSystemfs=FileSystem.get(uri,conf,"HDFS");PathresP=newPath(uploadpath);PathdestP=newPath("/photo");if(!fs.exists(destP)){fs.mkdirs(destP);}fs.copyFromLocalFile(resP,destP);fs.close();System.out.println("***********************");System.out.println("上传成功!");}//HDFS附件下载publicstaticvoiddownload()throwsException{Configurationconf=newConfiguration();Stringdest="hdfs://192.168.186.14:/photo/11.png";Stringlocal="D://11.png";FileSystemfs=FileSystem.get(URI.create(dest),conf,"hdfs");FSDataInputStreamfsdi=fs.open(newPath(dest));OutputStreamoutput=newFileOutputStream(local);IOUtils.copyBytes(fsdi,output,4096,true);System.out.println("***********************");System.out.println("下载成功!");}}
看完上述内容,你们对mysql中怎么处理blob数据有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。