六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 855|回复: 0

ibatis 配置 oracle 存储过程

[复制链接]

升级  34.67%

30

主题

30

主题

30

主题

秀才

Rank: 2

积分
102
 楼主| 发表于 2013-1-29 15:29:04 | 显示全部楼层 |阅读模式
话就不多说。直接看代码吧;自己理解记录,不是很恰当。
欢迎拍砖!!!

        <!-- 自定一个map容器,跟存储过程中输入变量一致 --><parameterMap class="hashmap" id="tableTempl">        <!-- 指定传入参数的java类型和jdbc类型  mode="IN" 表示输入;"OUT":输出参数--><parameter property="TEMP_TIME" jdbcType="VARCHAR"javaType="string" mode="IN" /><parameter property="TEMP_ID" jdbcType="VARCHAR"javaType="string" mode="IN" /><parameter property="TEMP_NAME" jdbcType="VARCHAR"javaType="string" mode="IN" /><parameter property="TEMP_REMARK" jdbcType="VARCHAR"javaType="string" mode="IN" /></parameterMap>        <!-- 自定一个sqlmap-ID parameterMap指定为上面定义的map(重要)--><procedure id="SP_SysClientBaseTempTable" parameterMap="tableTempl">        <!-- <![CDATA[ 语句 ]]> 其中:<![CDATA[ ]]> 最好不要换行--><![CDATA[{call sp_client_base_template(?,?,?,?)}]]></procedure><parameterMap class="hashmap" id="tableColTempl"><parameter property="TEMP_ITEM" jdbcType="VARCHAR"javaType="string" mode="IN" /><parameter property="TEMP_ID" jdbcType="VARCHAR"javaType="string" mode="IN" /><parameter property="TEMP_ITEM_NA" jdbcType="VARCHAR"javaType="string" mode="IN" /><parameter property="TEMP_TIME_DEC" jdbcType="VARCHAR"javaType="string" mode="IN" /></parameterMap><procedure id="SP_SysClientBaseTempTableCol" parameterMap="tableColTempl"><![CDATA[{call sp_client_base_template_col(?,?,?,?)}]]></procedure>
配置完毕后,看java代码;
basedao为自定义dao操作接口;以spring注入了sqlMapClient(org.springframework.orm.ibatis.SqlMapClientFactoryBean)

//tabDataMap 对应 sqlmap配置中的 tableTemplbasedao.queryForObject("client_core_common.SP_SysClientBaseTempTable",tabDataMap);//tabColMap 对应 sqlmap配置中的 tableColTemplHashMap tabColMap = (HashMap)tabColList.get(i);basedao.queryForObject("client_core_common.SP_SysClientBaseTempTableCol",tabColMap);

以上map集合中的tabDataMap 和 tabColMap
内容为:
tabDataMap = [{"TEMP_TIME":"2011-10-10 16:59:45","TEMP_NAME":"公文交 换","TEMP_REMARK":"123123","TEMP_ID":"201191165945703"}]
tabColMap = [{"TEMP_TIME_DEC":"正文","TEMP_ITEM_NA":"正文","TEMP_ID":"201191165945703","TEMP_ITEM":"DOC_TEXT"},{"TEMP_TIME_DEC":"附件字段15","TEMP_ITEM_NA":"附件字段15","TEMP_ID":"201191165945703","TEMP_ITEM":"ADDITIONAL10"},{"TEMP_TIME_DEC":"附件字段9","TEMP_ITEM_NA":"附件字段9"}]

结束!按照以上配置保你ibatis配置存储过程没有问题。
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表