Java实现MySQL图片存取操作
2013-10-28 19:13
399 查看
存入操作
[java]
view plaincopyprint?
/*
---------------表结构------------
表名:student2
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int(4) | NO | PRI | NULL | |
| name | varchar(20) | YES | | NULL | |
| stupic | blob | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
*/
package com.ibm.jdbc;
import java.io.*;
import java.sql.*;
public class StoreBLOB {
public static void main(String[] args) {
//连接MySQl数据库
Connection con=DBManager.getConnection();
PreparedStatement ps=null;
InputStream in=null;
try {
//从本地硬盘读取一张读片
in=new FileInputStream("d:/111.jpg");
ps=con.prepareStatement("insert into student2 values(?,?,?)");
ps.setInt(1,2);
ps.setString(2, "Tom");
ps.setBinaryStream(3, in, in.available());
ps.executeUpdate();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
try {
//关闭流
if(in!=null) in.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//关闭相关连接
DBManager.close(ps, con);
}
}
}
分享到:
[java]
view plaincopyprint?
/*
---------------表结构------------
表名:student2
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int(4) | NO | PRI | NULL | |
| name | varchar(20) | YES | | NULL | |
| stupic | blob | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
*/
package com.ibm.jdbc;
import java.io.*;
import java.sql.*;
public class StoreBLOB {
public static void main(String[] args) {
//连接MySQl数据库
Connection con=DBManager.getConnection();
PreparedStatement ps=null;
InputStream in=null;
try {
//从本地硬盘读取一张读片
in=new FileInputStream("d:/111.jpg");
ps=con.prepareStatement("insert into student2 values(?,?,?)");
ps.setInt(1,2);
ps.setString(2, "Tom");
ps.setBinaryStream(3, in, in.available());
ps.executeUpdate();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
try {
//关闭流
if(in!=null) in.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//关闭相关连接
DBManager.close(ps, con);
}
}
}
[java] view plaincopyprint? package com.ibm.jdbc; import java.sql.*; import java.io.*; public class GetBLOB { public static void main(String[] args) { Connection con=DBManager.getConnection(); Statement st=null; ResultSet rs=null; InputStream in=null; OutputStream out=null; try { st=con.createStatement(); rs=st.executeQuery("select stupic from student2 where id=2"); rs.next(); //将光标指向第一行 //从rs中读取stupic放进InputStream对象中 in=rs.getBinaryStream("stupic"); //申明byte数组,用来存放图片流 byte[] b=new byte[40000]; in.read(b); //从InputStream对象中读取数据放进byte数组中 //实例化OutputStream对象,在D盘创建一个图片文件 out=new FileOutputStream("d:/222.jpg"); //将文件输出,内容则为byte数组里面的数据 out.write(b); out.flush(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { if(in!=null) in.close(); if(out!=null) out.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } DBManager.close(rs, st, con);//关闭相关连接 } } } package com.ibm.jdbc; import java.sql.*; import java.io.*; public class GetBLOB { public static void main(String[] args) { Connection con=DBManager.getConnection(); Statement st=null; ResultSet rs=null; InputStream in=null; OutputStream out=null; try { st=con.createStatement(); rs=st.executeQuery("select stupic from student2 where id=2"); rs.next(); //将光标指向第一行 //从rs中读取stupic放进InputStream对象中 in=rs.getBinaryStream("stupic"); //申明byte数组,用来存放图片流 byte[] b=new byte[40000]; in.read(b); //从InputStream对象中读取数据放进byte数组中 //实例化OutputStream对象,在D盘创建一个图片文件 out=new FileOutputStream("d:/222.jpg"); //将文件输出,内容则为byte数组里面的数据 out.write(b); out.flush(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { if(in!=null) in.close(); if(out!=null) out.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } DBManager.close(rs, st, con);//关闭相关连接 } } }
分享到:
相关文章推荐
- Java实现对Mysql的图片存取操作
- Java实现对Mysql的图片存取操作
- Java实现MySQL图片存取操作
- Java实现MySQL图片存取操作 .
- Java实现用Mysql存取图片操作实例
- Java实现MySQL图片存取操作
- Java实现MySQL图片存取操作
- Java实现MySQL图片存取
- 实现为用java访问mysql的blob—对图片进行存取
- 使用java语言操作,如何来实现MySQL中Blob字段的存取
- java如何来实现MySQL中Blob字段的存取
- 如何使用java向mysql存取二进制图片
- javacpp-opencv图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体、位置、大小、粗度、翻转、平滑等操作
- java操作mysql实现增删改查的方法
- javacpp-opencv图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体、位置、大小、粗度、翻转、平滑等操作
- Java语句轻松实现与数据库MYSQL【本地数据库】的连接,和对数据库的增删改查操作
- java+mysql实现保存图片到数据库,以及读取数据库存储的图片
- JAVA Mysql中如何实现Blob的存取 -2
- java+mysql实现保存图片到数据库,以及读取数据库存储的图片
- java操作ftp实现文件的上传下载(适用于图片文档服务器)