数据库大数据存储类型演示

来源:互联网 发布:鹊桥 淘宝客 区别 编辑:程序博客网 时间:2024/05/10 12:37
import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.BufferedReader;import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.Statement;import org.junit.Test;import cn.hncu.util.ConnFactory;public class BigDataDemo {    @Test   //向数据库写文本数据    public void testWriteText() throws Exception{        Connection con = ConnFactory.getConnection();        String sql = "insert into bigdata(note) values(?)";        PreparedStatement pst = con.prepareStatement(sql);        InputStream in = BigDataDemo.class.getClassLoader().getResourceAsStream("JdbcDemo.abc");        pst.setAsciiStream(1, in);        pst.executeUpdate();        con.close();    }    @Test   //从数据库读文本数据    public void testReadText() throws Exception{        Connection con = ConnFactory.getConnection();        String sql = "select * from bigdata where id= 1";        Statement st = con.createStatement();        ResultSet rs = st.executeQuery(sql);        while(rs.next()){            InputStream in = rs.getAsciiStream(2);            BufferedReader br = new BufferedReader(new InputStreamReader(in));            String line = "";            while((line=br.readLine())!=null){                System.out.println(line);            }        }    }    @Test   //向数据库写图片    public void testWriteBlob() throws Exception{        Connection con = ConnFactory.getConnection();        String sql = "insert into bigdata(img) values(?)";        PreparedStatement pst = con.prepareStatement(sql);        InputStream in = BigDataDemo.class.getClassLoader().getResourceAsStream("0.jpg");        pst.setBinaryStream(1, in);        pst.executeUpdate();        con.close();    }    @Test   //从数据库读图片    public void testReadBlob() throws Exception{        Connection con = ConnFactory.getConnection();        Statement st = con.createStatement();        String sql = "select img from bigdata where id = 5";        ResultSet rs = st.executeQuery(sql);        while(rs.next()){            BufferedInputStream bis = new BufferedInputStream(rs.getBinaryStream(1));            OutputStream out = new FileOutputStream(new File("D:/a/img.jpg"));            BufferedOutputStream bos = new BufferedOutputStream(out);            int len = 0;            byte buf[] = new byte[512];            while((len = bis.read(buf))!=-1){                bos.write(buf, 0, len);            }            bis.close();            bos.close();            out.close();        }        con.close();    }}
0 0
原创粉丝点击