zoukankan      html  css  js  c++  java
  • 处理大数据对象

    一、大数据对象

    大数据对象处理主要有 CLOB(characterlarge object)和 BLOB(binary large object)两种类型的字段;

    在 CLOB 中可以存储大字符数据对象,比如长篇小说;

    在 BLOB 中可以存放二进制大数据对象,比如图片,电影,音乐;

    1、插入CLOB、BLOG对象

    /**
         * 添加图书
         * 
         * @param book
         * @return
         * @throws Exception
         */
        private static int addBook2(Book book) throws Exception {
            Connection con = dbUtil.getCon();// 获取连接
            String sql = "insert into t_book values(null,?,?,?,?,?,?)";
            PreparedStatement pstmt = con.prepareStatement(sql);
            pstmt.setString(1, book.getBookName());// 给第一个坑设置值
            pstmt.setString(2, book.getAuthor());// 给第二个坑设置值
            pstmt.setFloat(3, book.getPrice());// 给第三个坑设置值
            pstmt.setInt(4, book.getBookTypeId());// 给第四个坑设置值
            File context = book.getContext();// 获取文件
            InputStream inputStream = new FileInputStream(context);
            pstmt.setAsciiStream(5, inputStream, context.length());// 给第五个坑设置值
            
            File pic=book.getPic();//获取图片
            InputStream inputStream2=new FileInputStream(pic);
            pstmt.setBinaryStream(6, inputStream2,pic.length());// 给第六个坑设置值
            int result = pstmt.executeUpdate();
            dbUtil.close(pstmt, con);
            return result;
        }
    public static void main(String[] args) throws Exception {
            //文本存放地址
            File context=new File("F:/helloworld.txt");
            //图片存放地址
            File pic=new File("F:/bg02.jpg");
            Book book=new Book("helloworld","阿力",100,1,context,pic);
            
            int result=addBook2(book);
            if (result==1) {
                System.out.println("添加成功!");    
            }else {
                System.out.println("添加失败!");
                }
    }

    2、输出CLOB、BLOG对象

      /**
         * 获取对应结果集
         * @param id
         * @throws Exception
         */
        public static void getBook(int id)throws Exception{
            Connection con=dbUtil.getCon();
            String sql="select * from t_book where id=?";
            PreparedStatement pstmt=con.prepareStatement(sql);
            pstmt.setInt(1, id);
            ResultSet rSet=pstmt.executeQuery();
            if (rSet.next()) {
                String bookName=rSet.getString("bookName");
                String author=rSet.getString("author");
                float price=rSet.getFloat("price");
                int bookTypeId=rSet.getInt("bookTypeId");
                Clob c=rSet.getClob("context");
                String context=c.getSubString(1, (int) c.length());
                Blob b=rSet.getBlob("pic");
                //输出图片存放地址
                FileOutputStream out=new FileOutputStream(new File("F:/bg021.jpg"));
                out.write(b.getBytes(1,(int) b.length()));
                out.close();
                System.out.println("图书名称:"+bookName+"图书作者:"+author+"图书价格:"
                +price+"图书类别:"+bookTypeId+"图书内容:"+context);
            }
            dbUtil.close(pstmt, con);
        }
        public static void main(String[] args) throws Exception {
                getBook(9);
        }    
  • 相关阅读:
    20155209林虹宇虚拟机的安装及一点Linux的学习
    预备作业2林虹宇20155209
    预备作业01:你期望的师生关系是什么?
    20155203
    我眼中的师生关系以及对于专业学习的展望
    20155319的第一次随笔
    20155336 2016-2017-2《JAVA程序设计》第二周学习总结
    20155336 2016-2017-2《JAVA程序设计》第一周学习总结
    虎光元的第三次随笔
    20155336虎光元
  • 原文地址:https://www.cnblogs.com/xiaoyqng/p/8321041.html
Copyright © 2011-2022 走看看