eric_gcm 发表于 2013-1-26 15:56:14

java mysql 读取blob 数据

Java Mysql存取Blob数据
package com.allan;import java.sql.*;import java.io.*;public class Storeblobfile {public static void main(String[] args) {    try{      FileInputStream file = new FileInputStream("C:\\shanshui.jpg");      Class.forName("com.mysql.jdbc.Driver");      Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/test?user=root&password=root");      PreparedStatement ps = conn.prepareStatement("insert into user values(?,?,?)");      ps.setString(1,"blob");      ps.setInt(2,23);      ps.setBinaryStream(3, file, file.available());      ps.executeUpdate();      Statement stmt = conn.createStatement();      ResultSet rs = stmt.executeQuery("select file from user where name = 'blob'");      while(rs.next()){      Blob blob = rs.getBlob(1);      InputStream in = blob.getBinaryStream();      FileOutputStream fout = new FileOutputStream("C:\\copy.jpg");      int b = -1;      while((b=in.read())!=-1){            fout.write(b);       }   }    }catch(Exception e){      System.out.println(e.getMessage());    } }}//如果有一blob类型的列“content”,要将content中的数据取出来放到String中:Blob blob = rs.getBlob("content");int bolblen = (int) blob.length();byte[] data = blob.getBytes(1, bolblen);String content = new String(data); 
 
页: [1]
查看完整版本: java mysql 读取blob 数据