model:
private byte[] argumentData; //图片附件
public byte[] getArgumentData() {
return argumentData;
}
public void setArgumentData(byte[] argumentData) {
this.argumentData = argumentData;
}
hbm.xml映射文件:
<property
name="argumentData"
column="argumentData"
type="org.springframework.orm.hibernate3.support.BlobByteArrayType"
lazy="true">
</property>
<!-- ORACLE处理lob的配置begin-->
<!--
<bean id="nativeJdbcExtractor" lazy-init="true" class="org.springframework.jdbc.support.nativejdbc.SimpleNativeJdbcExtractor"/>
<bean id="lobHandler" lazy-init="true" class="org.springframework.jdbc.support.lob.OracleLobHandler">
<property name="nativeJdbcExtractor">
<ref bean="nativeJdbcExtractor"/>
</property>
</bean>
-->
<!-- ORACLE处理lob的配置end-->
<!-- DB2处理lob的配置begin-->
<bean id="DefaultLobHandler" lazy-init="true" class="org.springframework.jdbc.support.lob.DefaultLobHandler">
</bean>
<!-- DB2处理lob的配置end-->
sessionFactory中相关的配置:
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!--<property name="configLocation" value="classpath:hibernate.cfg.xml" /> -->
<!-- <property name="lobHandler" ref="lobHandler"/> --> <!-- ORACLE处理lob的配置 -->
<property name="lobHandler" ref="DefaultLobHandler"/> <!-- DB2处理lob的配置 -->
。。。。。。。。。
把流直接set到对象的blob字段里,调dao保存对象,ok