Ibatis,oracle以及如何映射返回“列”的旧过程

时间:2010-12-22 21:42:27

标签: oracle map ibatis

我有下一个程序

CREATE OR REPLACE Package PC.PCS_Material_Pkg 
As
TYPE Code_material_of_arr IS TABLE OF Number(30) INDEX BY BINARY_INTEGER;
TYPE Desc_Material_Of_arr IS TABLE OF Varchar2(240) INDEX BY BINARY_INTEGER;
Procedure PCS_Material
   ( SRV_Message                    In Out     Varchar2
    , In_xDesc_Material              In         Varchar2
    , Col_Codi_material_of           Out        Code_material_of_arr
    , Col_Desc_Material_Of           Out        Desc_Material_Of_arr
    );
End PCS_Material_Pkg;
/

我想知道如何映射(xml)至少一些如何继续的线索。遗憾的是,我无法更改程序并返回光标。

感谢。

2 个答案:

答案 0 :(得分:0)

请你详细说明这个问题..

Ibatis,通常有一个sqlMap.xml文件,您可以在其中编写所有查询,并获得一个resultObject作为回报。

您真正需要做的就是向Ibatis提供Oracle数据库驱动程序,并在xml文件中提供要运行的查询。

答案 1 :(得分:0)

这是一个例子(取自另一个问题)。注意参数的模式。您将要使用Oracle jdbcTypes,但这应该向您发送正确的方向。

<parameterMap id="mapping-description-modifiable" class="java.util.Map">           
    <parameter property="id" javaType="java.lang.Long" jdbcType="NUMERIC" mode="INOUT"/>         
    <parameter property="lang" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>         
    <parameter property="shortDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>         
    <parameter property="fullDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>         
    <parameter property="modify" javaType="boolean" jdbcType="NUMBER" mode="IN"/>     
</parameterMap> 
<procedure id="add-description" arameterMap="mapping-description-modifiable">         
     {call COM_DESCRIPTION_PKG.add_desc(?,?,?,?,?)} 
</procedure>