欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql中blob數(shù)據(jù)處理方式

 更新時(shí)間:2018年06月04日 09:11:47   作者:徐茂盛  
本文通過(guò)實(shí)例代碼給大家介紹了mysql中blob數(shù)據(jù)處理方式,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

具體代碼如下所示:

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 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 {
      // 關(guān)閉連接
      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("下載成功!");
  }
}

總結(jié)

以上所述是小編給大家介紹的mysql中blob數(shù)據(jù)處理方式,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • mysql8 公用表表達(dá)式CTE的使用方法實(shí)例分析

    mysql8 公用表表達(dá)式CTE的使用方法實(shí)例分析

    這篇文章主要介紹了mysql8 公用表表達(dá)式CTE的使用方法,結(jié)合實(shí)例形式分析了mysql8 公用表表達(dá)式CTE的基本功能、原理使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2020-02-02
  • Ubuntu 18.04安裝mysql 5.7.23

    Ubuntu 18.04安裝mysql 5.7.23

    這篇文章主要為大家詳細(xì)介紹了Ubuntu 18.04安裝mysql 5.7.23的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • mysql 5.7.17 安裝教程 附MySQL服務(wù)無(wú)法啟動(dòng)的解決方法

    mysql 5.7.17 安裝教程 附MySQL服務(wù)無(wú)法啟動(dòng)的解決方法

    這篇文章主要為大家詳細(xì)介紹了mysql 5.7.17安裝教程,并且為大家分享了MySQL服務(wù)無(wú)法啟動(dòng)的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 一文帶你了解MySQL之約束

    一文帶你了解MySQL之約束

    在SQL標(biāo)準(zhǔn)中,一共規(guī)定了6種不同的約束,包括非空約束,唯一約束和檢查約束等,而在MySQL中是不支持檢查約束的,所以這篇文章先對(duì)其余5種約束做一個(gè)詳解和練習(xí),需要的朋友可以參考下
    2023-06-06
  • MySQL忘記root密碼錯(cuò)誤號(hào)碼1045的解決辦法

    MySQL忘記root密碼錯(cuò)誤號(hào)碼1045的解決辦法

    這篇文章主要介紹了MySQL忘記root密碼錯(cuò)誤號(hào)碼1045的解決辦法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • MySQL8.0中的降序索引

    MySQL8.0中的降序索引

    這篇文章主要介紹了MySQL8.0中的降序索引的相關(guān)知識(shí),幫助大家更好的理解和使用MySQL8.0的新特性,感興趣的朋友可以了解下
    2020-10-10
  • ERROR: Error in Log_event::read_log_event()

    ERROR: Error in Log_event::read_log_event()

    ERROR: Error in Log_event::read_log_event(): read error, data_len: 438, event_type: 2
    2014-02-02
  • MySQL報(bào)錯(cuò)1040'Too?many?connections'的原因以及解決方案

    MySQL報(bào)錯(cuò)1040'Too?many?connections'的原因以及解決方案

    這篇文章主要給大家介紹了關(guān)于MySQL報(bào)錯(cuò)1040'Too?many?connections'的原因以及解決方案,文中通過(guò)實(shí)例代碼以及圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • MySQL優(yōu)化之大字段longtext、text所生產(chǎn)的問(wèn)題

    MySQL優(yōu)化之大字段longtext、text所生產(chǎn)的問(wèn)題

    本文主要介紹了MySQL優(yōu)化之大字段longtext、text所生產(chǎn)的問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • MySql連接不上問(wèn)題及解決

    MySql連接不上問(wèn)題及解決

    這篇文章主要介紹了MySql連接不上問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06

最新評(píng)論