前提:Spring + ibatis + oracle 调试成功
1.普通调用Procedures:
直接在ibatis映射的.xml文件里面
<parameterMap id="nameid" class="map" >
<parameter property="name1" jdbcType="VARCHAR2" javaType="java.lang.String" mode="IN"/>
<parameter property="outname1" jdbcType="VARCHAR2" javaType="java.lang.String" mode="OUT"/>
</parameterMap>
<procedure id="test1__try2" parameterMap="nameid">
<![CDATA[
{call test1.wap_try(?,?)}
]]>
</procedure>
parameterMap 是带入的参数
2.调用带单个返回值的Function:
用上面方法失败!
使用下面:
<select id="test1__wap_try" resultClass="com.dataSource.persistency.OracleCall"><![CDATA[
select test5(#threadTopic#,#userid#,#threadBody#,#parentid#,#categoryname#,#icopicturepath#) as COLUMNS20 from dual
]]>
</select>
返回值名称COLUMNS20 ,test 为Function名,后面是参数
3.调用packages返回单个值或不返回值:
同2
<select id="test1__wap_try" resultClass="com.dataSource.persistency.OracleCall"><![CDATA[
select test1.test5(#threadTopic#,#userid#,#threadBody#,#parentid#,#categoryname#,#icopicturepath#) as COLUMNS20 from dual
]]>
</select>
test1为包名,test5为Function名
4.返回多个值cursor:
目前还不清楚............