二进制数据形式保存和获取图片

    //以二进制形式保存文件到数据库
    public void setImages(File file){
        Connection conn = null;
        String sql = "insert into imageTab(IMAGE) values(?)";
        PreparedStatement ps = null;
        FileInputStream is = null;
        try {
            is = new FileInputStream(file);
            ps = conn.prepareStatement(sql);
            conn = DbUtil.getConnection();
            ps.setBinaryStream(1, is, (int) file.length());
            ps.executeUpdate();
        } catch (FileNotFoundException ex) {
            Logger.getLogger(TPositionBIZ.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(TPositionBIZ.class.getName()).log(Level.SEVERE, null, ex);
        }
    }


    //获取数据
    public Image getImageSteam()throws NullPointerException{
        String sql = "select image from imageTab";
        ResultSet rs = DbUtil.executeQuery(sql);
        Image image=null;
        try {
               while (rs.next()) {
                         byte[] c = rs.getBytes("image");
                         image=Toolkit.getDefaultToolkit().createImage(c);
               }
         } catch (SQLException e) {
               e.printStackTrace();
         }finally {
               DbUtil.closeConnection();
         }
         return image;
    }


    //显示图片
     TBookImageBIZ imagbiz=new TBookImageBIZ();
     try{
           Image image=imagbiz.getImageSteam(o.getBookId());
           LabImage.setIcon(new ImageIcon(image));
     }catch(NullPointerException ex){
           LabImage.setIcon(new ImageIcon("1.jpg"));
     }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值