Jdbc读取Blob数据

简介: Jdbc读取Blob数据

有个问题,就是要知道具体是第几个字段是blob类型。若是对象,批量处理的时候并不容易兼容blob

package jdbc;

import org.junit.Test;

import java.io.*;
import java.sql.*;

/**
 * @author 小邱
 * @version 0.0.1
 * @description PreparedStatement操作Blob类型数据(图片视频等数据)
 * @since 2021/9/28 16:27
 */
public class PreparedStatementBlobTest {

    //查询Blob数据
    @Test
    public void test2() throws SQLException, IOException {

        Connection connection = JdbcUtils.getConnection();
        String sql = "select username,photo from customers where username = ? ";
        PreparedStatement ps = connection.prepareStatement(sql);
        ps.setObject(1,"小明");
        ResultSet rs = ps.executeQuery();
        if (rs.next()) {
            System.out.println(rs.getString(1));
            Blob photo = rs.getBlob(2);
            InputStream photoBinaryStream = photo.getBinaryStream();
            FileOutputStream outputStream = new FileOutputStream(new File("abd.jpg"));
            byte[] bytes = new byte[1024];
            int len;
            while ((len=photoBinaryStream.read(bytes))!=-1){
                outputStream.write(bytes,0,len);
            }

        }
        JdbcUtils.close(connection,ps,rs);
    }
}

相关文章
|
存储 关系型数据库 MySQL
jdbc之操作BLOB类型字段
jdbc之操作BLOB类型字段
jdbc之操作BLOB类型字段
|
存储 Oracle 关系型数据库
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
640 0
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
|
Java 数据库连接
JDBC学习(七):操作Blob类型数据
JDBC学习(七):操作Blob类型数据
112 0
|
Java 数据库连接
Jdbc读取Blob数据
Jdbc读取Blob数据
|
存储 SQL Oracle
数据库中存媒体文件的字段用什么类型?一文带你了解二进制大对象BLOB
在大数据环境中,BLOB 很常见,并且存储在关系或非关系数据库系统中,描述的是一个二进制形式的大文件,一般可以是视频、音频或图像和图形文件。
435 0
数据库中存媒体文件的字段用什么类型?一文带你了解二进制大对象BLOB
|
SQL Java 数据库连接
|
存储 关系型数据库 MySQL
JDBC添加图片(Blob)类型的数据
学习记录:添加图片(Blob)类型的数据
|
存储 关系型数据库
postgre存储bytea类型(blob)
postgre存储bytea类型(blob)
762 0
postgre存储bytea类型(blob)
|
SQL 关系型数据库 Java
mybatis oracle BLOB类型字段保存与读取
一、BLOB字段   BLOB是指二进制大对象也就是英文Binary Large Object的所写,而CLOB是指大字符对象也就是英文Character Large Object的所写。其中BLOB是用来存储大量二进制数据的;CLOB用来存储大量文本数据。
4839 0
|
关系型数据库 MySQL 数据库
mysql++读写BLOB数据
mysql++读写BLOB数据 1、使用sql_create_n宏函数,建立数据库表字段与对象。    #define sql_create_2(NAME, CMP, CONTR, T1, I1, T2, I2) \         sql_create_complete_2(NAME, C.
2111 0