hibernate 4+spring 处理mysql blob类型

model

    @Lob
    @Column(name = "HEADICON",updatable=true,insertable=true)
    private byte[] headIcon;

dao

        User rtUser =   getHibernateTemplate().get(User.class, user.getUserid());
        if(rtUser ==null) return false;
        InputStream is;
        try {
              is=new FileInputStream(new File(iconImg));
            byte[]  b = new byte[is.available()];
               is.read(b);
               is.close();
               rtUser.setHeadIcon(b);
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        getHibernateTemplate().update(rtUser);
        getHibernateTemplate().flush();

读取

    User rtUser = userService.getUser(user.getUserid());
        InputStream in =new ByteArrayInputStream(rtUser.getHeadIcon());
     HttpServletResponse response=ServletActionContext.getResponse();
     response.setContentType("image/jpeg");
     ServletOutputStream out = response.getOutputStream();
     byte[] buffer=new byte[500];
     int length = 0;
     while(-1 != (length = in.read(buffer, 0, buffer.length)))
     {
         out.write(buffer);
     }
     in.close();
     out.close();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值