xml 代码
我得问题:
使用ibatis调用存储过程,mysql里面测试能够正确返回一个id,但是在ibatis中调用存储过程之后,没有办法获取存储过程返回的那个id, 求助中....ing
相关代码如下:
xml 代码
<parameterMap class="map" id="swapParameters">
<parameter property="namestr" javaType="java.lang.String" jdbcType="varchar" mode="IN"/>
<parameter property="returnid" javaType="java.lang.Integer" jdbcType="int" mode="OUT"/>
</parameterMap>
<procedure id="insertNameByProcedure" parameterMap="swapParameters">
{call UP_GETINSERTEDIDENTITY_TT(?,?)}
</procedure>
sql 代码
CREATE PROCEDURE `UP_GETINSERTEDIDENTITY_TT`(inname VARCHAR(20), OUT returnid INTEGER(11))
NOT DETERMINISTIC
SQL SECURITY INVOKER
COMMENT ''
BEGIN
insert into `tt`(NAME) values(inname);
select LAST_INSERT_ID() into returnid ;
END;
java 代码
Integer returnid = null;
HashMap<String,Object> paramMap = new HashMap<String,Object>();
paramMap.put("namestr", insertname);
paramMap.put("returnid", returnid);
this.getSqlMapClientTemplate().queryForObject("insertNameByProcedure", paramMap);
return returnid;
return (Integer)paramMap.get("returnid");
我得问题:
使用ibatis调用存储过程,mysql里面测试能够正确返回一个id,但是在ibatis中调用存储过程之后,没有办法获取存储过程返回的那个id, 求助中....ing
相关代码如下:
xml 代码
<parameterMap class="map" id="swapParameters">
<parameter property="namestr" javaType="java.lang.String" jdbcType="varchar" mode="IN"/>
<parameter property="returnid" javaType="java.lang.Integer" jdbcType="int" mode="OUT"/>
</parameterMap>
<procedure id="insertNameByProcedure" parameterMap="swapParameters">
{call UP_GETINSERTEDIDENTITY_TT(?,?)}
</procedure>
sql 代码
CREATE PROCEDURE `UP_GETINSERTEDIDENTITY_TT`(inname VARCHAR(20), OUT returnid INTEGER(11))
NOT DETERMINISTIC
SQL SECURITY INVOKER
COMMENT ''
BEGIN
insert into `tt`(NAME) values(inname);
select LAST_INSERT_ID() into returnid ;
END;
java 代码
Integer returnid = null;
HashMap<String,Object> paramMap = new HashMap<String,Object>();
paramMap.put("namestr", insertname);
paramMap.put("returnid", returnid);
this.getSqlMapClientTemplate().queryForObject("insertNameByProcedure", paramMap);
return returnid;
return (Integer)paramMap.get("returnid");