我正在开发一个用于调用 sql 存储过程的 java 应用程序。会有许多存储过程具有不同的 IN 和 OUT 参数。要调用的过程将通过 XML 文件进行配置。Java 应用程序基本上只是运行一个 proc(在预定时间,调度程序/bat 文件),然后收集统计信息(存储的 proc 的 OUT 参数)并通过电子邮件发送详细信息。我还不知道的部分是为 MyBatis 定义 XML。请感谢存储过程的 MyBatis 实现的输入和示例?我现在没有找到任何东西。此外,如果有更好、更清洁的方法来解决整体问题。谢谢!
问问题
3746 次
2 回答
0
不是IBatis专家,但我确实找到了几个例子:
http://www.mail-archive.com/user-java@ibatis.apache.org/msg10286.html
http://www.apacheserver.net/How-to-get-output-from-stored-procedure-to-ibatis-class-at1039903.htm
希望这可以帮助...
于 2010-11-09T09:42:22.200 回答
0
如果您使用 MyBatis,下面的代码片段可能会有所帮助
<select id="queryid" parameterMap="paramMap" statementType="CALLABLE">
{CALL procedureName(#{param1, mode=IN, jdbcType=VARCHAR},
#{param2, mode=IN, jdbcType=INTEGER},
#{param3, mode=IN, jdbcType=VARCHAR},
#{param4, mode=IN, jdbcType=VARCHAR},
#{param5, mode=OUT, jdbcType=VARCHAR},
#{param6, mode=OUT, jdbcType=INTEGER})}
</select>
<parameterMap id="paramMap" type="Map">
<parameter property="param1" jdbcType="VARCHAR" javaType="String" mode="IN"></parameter>
<parameter property="param2" jdbcType="INTEGER" javaType="Integer" mode="IN"></parameter>
<parameter property="param3" jdbcType="VARCHAR" javaType="String" mode="IN"></parameter>
<parameter property="param4" jdbcType="VARCHAR" javaType="String" mode="IN"></parameter>
<parameter property="param5" jdbcType="VARCHAR" javaType="String" mode="OUT"></parameter>
<parameter property="param6" jdbcType="INTEGER" javaType="Integer" mode="OUT"></parameter>
</parameterMap>
于 2017-07-17T10:24:03.997 回答