香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > MYSQL >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

mysql中blob数据处理方式


时间:2020-11-03 13:35 作者:admin


具体代码如下所示:

package epoint.mppdb_01.h3c;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.net.URI;import java.sql.Blob;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import org.apache.commons.net.ftp.FTPClient;import org.apache.commons.net.ftp.FTPReply;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FSDataInputStream;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IOUtils;public class mysql/' target='_blank'>mysqlblobToMPPphoto {  // MySQL连接  public static Connection getMySQLConnection() throws Exception {    String MySQLDRIVER = "com.mysql.jdbc.Driver";    String MySQLURL = "jdbc:mysql://192.168.186.13:3306/bigdata_scene03_rktj";    String MySQLUSERNAME = "root";    String MySQLPASSWORD = "Gepoint";    Connection MySQLconn = DriverManager.getConnection(MySQLURL, MySQLUSERNAME, MySQLPASSWORD);    return MySQLconn;  }  // MPP连接  public static Connection getMPPConnection() throws Exception {    String MPPDRIVER = "com.MPP.jdbc.Driver";    String MPPURL = "jdbc:MPP://192.168.186.14:5258/bigdata_scene03_rktj";    String MPPUSERNAME = "mpp";    String MPPPASSWORD = "h3c";    Connection MPPconn = DriverManager.getConnection(MPPURL, MPPUSERNAME, MPPPASSWORD);    return MPPconn;  }  //  public static void getMySQLblobToHDFS() throws Exception {    Connection conn = getMySQLConnection();    ResultSet rs = null;    try {      String sql = "select ROW_ID,photo from t_rk_baseinfo_blob limit 10";      Statement prest = conn.prepareStatement(sql);      rs = prest.executeQuery(sql);      while (rs.next()) {        int row_id = rs.getInt(1);        Blob photo = rs.getBlob(2);        System.out.println(row_id + " " + photo);        InputStream in = photo.getBinaryStream();        OutputStream out = new FileOutputStream("H:/photo/" + row_id + ".jpg");        int len = 0;        byte[] buffer = new byte[1024];        while ((len = in.read(buffer)) != -1) {          out.write(buffer, 0, len);        }        upload("H:/photo/" + row_id + ".jpg");      }      prest.close();      rs.close();    } catch (Exception e) {      e.printStackTrace();    } finally {      // 关闭连接      if (conn != null) {        try {          conn.close();          conn = null;        } catch (Exception e) {          e.printStackTrace();        }      }    }  }  public static void main(String[] args) throws Exception {    getMySQLblobToHDFS();  }  // HDFS附件上传  public static void upload(String uploadpath) throws Exception {    Configuration conf = new Configuration();    URI uri = new URI("hdfs://192.168.186.14:8020");    FileSystem fs = FileSystem.get(uri, conf, "HDFS");    Path resP = new Path(uploadpath);    Path destP = new Path("/photo");    if (!fs.exists(destP)) {      fs.mkdirs(destP);    }    fs.copyFromLocalFile(resP, destP);    fs.close();    System.out.println("***********************");    System.out.println("上传成功!");  }  // HDFS附件下载  public static void download() throws Exception {    Configuration conf = new Configuration();    String dest = "hdfs://192.168.186.14:/photo/11.png";    String local = "D://11.png";    FileSystem fs = FileSystem.get(URI.create(dest), conf, "hdfs");    FSDataInputStream fsdi = fs.open(new Path(dest));    OutputStream output = new FileOutputStream(local);    IOUtils.copyBytes(fsdi, output, 4096, true);    System.out.println("***********************");    System.out.println("下载成功!");  }}

总结

以上所述是小编给大家介绍的mysql中blob数据处理方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)