oracle中的blob数据类型,在hihbernate映射中使用spring辅助类型:
<property name="filedata" type="org.springframework.orm.hibernate3.support.BlobByteArrayType">
<column name="filedata" />
</property>
在VO中,对应的类型应该为byte[]
private byte[] filedata;
需要sping中配置相关的bean
<!--配置处理blob大数据 -->
<bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.C3P0NativeJdbcExtractor"/>
<bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler" lazy-init="true">
<property name="nativeJdbcExtractor">
<ref bean="nativeJdbcExtractor" />
</property>
</bean>
然后在sessionFactory中,将oracleLobHandler注入。
<!-- blob大数据处理 -->
<property name="lobHandler" ref="oracleLobHandler"></property>
然后,就可以和普通数据类型一样,直接通过hibernate API进行存取操作了。
注意:
<bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.C3P0NativeJdbcExtractor"/>
这里是利用了c3p0连接池的情况下用: C3P0NativeJdbcExtractor
如果是dpcp连接池,则用:CommonsDbcpNativeJdbcExtractor
如果没有使用连接池,则用:SimpleNativeJdbcExtractor
其他的,用了jboss,weblogic连接池等等的情况,都有专门的Extractor对应。
本文介绍如何在Oracle数据库中使用BLOB数据类型,并通过Hibernate框架实现与Spring应用程序的集成。主要内容包括配置Spring Bean处理大数据、定义VO类及在Hibernate中进行数据存取。
1223

被折叠的 条评论
为什么被折叠?



