Hibernate向数据库存入BLOB和CLOB类型的数据

Hibernate向数据库存入BLOB和CLOB类型的数据

我选用的是byte[] +@Lob

刚开始采用的java.sql.Blob,将上传的图片getBytes()后,通过Hibernate.getLobCreator(HibernateSessionFactory.getSession()).createBlob(new byte[] (pic.getBytes()));

来获取Blob类型.

其实也可以获取BLOB类型(oracle.BLOB),但是需要通过原始的数据源和statement得到的结果集的resultset.getBlob()的方法来获取.

因为使用HibernateTemplate或者HQL语句,便不知道如何简单获取BLOB.

其实最简单的方法应该就是将实例变量定义为BLOB,但需要将上传文件也转换成BLOB,因为这种类型是ojdbc带的,form提交并不能将其转换为相应的javaBean,这是难点.BLOB解决办法