大数据|学习笔记

开发者学堂课程【JDBC数据库开发入门:大数据】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/29

大数据


目标:把MP3转移到数据库。

 

在my.ini中添加如下配置!

 

max. allowed packet=10485760

 

大数据字节的类型:

 

类型

 

tinyblobe

 

blobe

 

mediumblobe

 

longblobe

长度

 

2-1B (256B)

 

215.1B (64K)

 

224-1B (16M)

 

232-1B (4G)

 

字符类型:

 

类型

 

tinydlobe

 

clobe

 

mediumdlobe

 

longclob

长度

 

25-18 (256B)

 

215-18 (64K)

 

241B (16M)

 

2-1B (4G)

 

具体保存步骤:

 

需要得到Blob:⑴有的是文件,目标是Blob⑵先把文件变成byte[]⑶再使用byte创建Blob

把mp3保存到数据库中:⑴得到Connection⑵给出sql模板,创建pstmt⑶设置sql模板中的参数⑷调用pstmt的executeUpdate()执行

例如:

Connection con = JdbcUtils. getConnection() ;

 

string sql = "insert into tab_ bin values(?,?, ?)";

 

Preparedstatement pstmt = con. prepareStatement (sql);

 

pstmt.setInt(1, 1);

 

pstmt.setstring(2, "流光飞舞.mp3");

 

Blob blob = null;

 

pstmt . setBlo(3,blob )

 

pstmt. executeUpdate();

 

把文件转换成byte[]

 

byte[] bytes . IoUtils. toByteArzay(new PileInputstream ("F:/流光飞舞 .mp3"));

 

Blob blob . nul 1

 

patmt . setBlob(3, blob) ;

 

pa tmt . executeUpdate()

 

从数据库中读取mp3

 

1. 创建Cohnectlon

 

Connection con = JdbcUtils. getConnection();

 

2.给出select语 句横板,创建pstmt

 

String sq1 = "select from tab bin";

 

Preparedstatement pstmt = con.prepareStatement(sq1) ;

 

.3. pstmt执行查询,得到Resultset

 

ResultSet rs = pstmt .executeQuery() ;

 

4.获取rs中名为data的列数据

 

if(rs.next()) {

 

Blob blob = rs.getBlob ("data");

 

.把Blob变成硬盘上的文件!

 

1.通过Blob得到输入流对象

 

     2.自己创建输出流对象

 

     3.把输入流的数据写入到输出流中

 

InputStream in = blob.getBinaryStream() ;

 

OutputStream out = new FileOutputStream("c:/1gfw .mp3");


Ioutils.copy(in, out) ;

上一篇:Hadoop概念学习系列之Hadoop新手学习指导之hadoop核心知识学习(二十一)


下一篇:hadoop_学习_01_入门准备