OK, this is in the User's Guide, but since you apparently did not read it, here it is again. 
這在用戶指南里提到過,但是既然你顯然沒有看過,這里復述一遍。
Stored procedures are supported via the <procedure> statement element. The following example shows how a stored procedure would be used with output parameters.
存儲過程通過<procedure>元素來支持,下面的例子展示怎么樣通過output參數來顯示怎么使用存儲過程。
<parameterMap id="swapParameters" class="map" >
<parameter property="email1" jdbcType="VARCHAR" javaType="java.lang.String" mode="INOUT"/>
<parameter property="email2" jdbcType="VARCHAR" javaType="java.lang.String" mode="INOUT"/>
</parameterMap>
<procedure id="swapEmailAddresses" parameterMap="swapParameters" >
{call swap_email_address (?, ?)}
</procedure>
Calling the above procedure would swap two email addresses between two columns (database table) and also in the parameter object (Map). The parameter object is only modified if the parameter mappings mode attribute is set to ?INOUT? or ?OUT?. Otherwise they are left unchanged. Obviously immutable parameter objects (e.g. String) cannot be modified.
調用上面的存儲過程將交換表的兩列和輸入參數的map里的兩個值。參數對象只有在設置位INOUT或OUT時,調換元素位置。否則他們保持不動,顯然不便對象String時不能夠改動的。
Note! Always be sure to use the standard JDBC stored procedure syntax. See the JDBC CallableStatement documentation for more information.
注意!總是確保使用標準的JDBC存儲過程語法。看JDBC的CallableStatement文檔獲取更多內容。
What SqlMapClient Method Should I Use?
我應該用哪些SqlMapClient方法?
It depends. Here is some help...
那樣看情況了,下面這些幫你作出選擇...
If your procedure returns a result set (not a result set in an OUT parameter, but a result set from the procedure itself), then use queryForList() or queryForObject(). Use queryForList() if you expect more than one result object, or queryForObject() if you expect only one result Object.
如果存儲過程返回一個Result Set(不是一個OUT參數,而是來自存儲過程自身的Result Set),那么用queryForList()或者queryForObject().
當有多個結果對象時,用queryForList(),否則如果有一個結果對象,使用QueryForObject().
If your procedure returns a result set AND updates data, then you should also configure your <transactionManager> with the attribute commitRequired="true".
如果你的存儲過程返回一個結果,并且更新了數據,那么你應該還要配置<transactionManager>,設置commitRequired="true"
If your procedure does not return result sets, or only returns result sets in OUT parameters, then use the update() method.
如果你的存儲過程沒有返回結果集,而是僅僅從OUT 參數返回結果集,那么用update()方法。