SSH框架,在向oracle11g中插入图片时提示信息。

图片为byte[]对应数据库中的blob字段,错误原因是oracle版本问题,不同的版本处理方式不同。

Spring.xml配置

oracle9的处理方式:

<bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.SimpleNativeJdbcExtractor" lazy-init="true" />  

    <bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler" lazy-init="true">  

        <property name="nativeJdbcExtractor">  

            <ref bean="nativeJdbcExtractor" />  

        </property>  

    </bean>  

oracle11的处理方式:

<bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.DefaultLobHandler" lazy-init="true" />  


ibatis 使用:

<insert id="insertExcel" parameterClass="java.util.Map">

insert into xzxk_spsc_sqclfj

 (wordid, tepid, tepcategory, buspkey, wordname, wordsize, wordcontent, createdate, createman, wordnew, wordremark,fileextname)

values

 (#WORDID#, #TEPID#, #TEPCATEGORY#, #BUSPKEY#, #WORDNAME#, #WORDSIZE#, #WORDCONTENT,handler=org.springframework.orm.ibatis.support.BlobByteArrayTypeHandler#, sysdate, #CREATEMAN#, #WORDNEW#, #WORDREMARK#,#FILEEXTNAME#)

</insert>