hibernate处理long,blob字段
最近编程的时候遇到需要将文件存储到数据,就想到了Oracle的blob字段,但是在网上查询了一些资料,自己总结下,跟大家交流下,希望大家多多指教.
环境:jdk1.4+Spring2.5+hibernate3.1
如要hibernate能处理blob字段,则需要在配置数据源时加上如下代码:
<bean id="nativeJdbcExtractor" name="code"><property name="lobHandler"> <ref bean="oracleLobHandler"/> </property>
<property column="data" lazy="false" name="data" type="text"/>
<property column="blobdata" lazy="false" name="blobdata" type="blob"/>
Blob blobdata = Hibernate.createBlob(FileInputStream);
Blob blobdata = Hibernate.createBlob(byte[]);
String sql = "select blobdata from TABLE t where id=1"try{conn = session.connection();pstmt = conn.prepareStatement(sql);rst = pstmt.executeQuery();if(rst.next()){Blob blob = rst.getBlob("blobdata");byte[] bt = blob.getBytes(1, (int) blob.length());}}catch(Exception e){}finally{rst.close();pstmt.close();conn.close();this.releaseSession(session);}