我的oracle 函数:
   create or replace procedure get_cur_item_info(sysItemIds in varchar2,sysId in varchar2,items out sys_refcursor) is
begin
       open items for
       select
            civ.item_id,civ.sys_item_id,civ.sys_id,civ.parent_id,civ.name,civ.version_code,'' as privilege_value
       from 
            tbl_prvlg_cur_item_view civ
       where 
            civ.sys_item_id in (sysItemIds);     
exception
    when others then
            dbms_output.put_line(sqlcode || sqlerrm);
        rollback; 
end get_cur_item_info;
很简单的一个查询函数
-------------------------------------------------------------------
ibatis   配置文件:  <procedure id="queryIteminfo" parameterMap="itemParameter">
     {call get_cur_item_info(?,?,?,?)}
    </procedure><parameterMap id="itemParameter" class="java.util.Map">
   <parameter property="sysItemIds" jdbcType="VARCHAR2"  javaType="java.lang.String" mode="IN"  />
   <parameter property="sysId" jdbcType="VARCHAR2"  javaType="java.lang.String" mode="IN"  />
     <parameter property="items" jdbcType="ORACLECURSOR"  javaType="cursor" mode="OUT" resultMap="compareItemUpdate" />
</parameterMap>----------------------------------------------------------------
问题:我调用这个函数的时候,参数   sysItemIds = "'1','2'"
传到oracle的时候自动  变为:''1','2''  
以前在ibatis中传这种参数的时候用  $$ 符号。但是在调用函数的时候 好像不能这样用把