java - MyBatis - 将存储过程输出参数值映射到 POJO

标签 java stored-procedures ibatis mybatis pojo

基本上,我想将存储过程(数字)的输出参数映射到基本 POJO 的属性。事实证明这比我想象的要棘手一些。我有以下设置:

<resultMap id="BaseResultMap" type="myPOJO">
<result property="pojoPropertyToHaveValueMappedTo" />
</resultMap>

<select id="selectOne" parameterType="com.ParameterType" statementType="CALLABLE" resultMap="BaseResultMap">
{call theDB.my_stored_proc
(#{numberSpReturns,jdbcType=NUMERIC, mode=OUT})}
/select>

对存储过程的调用很好,并且我得到了我期望的返回数值。但是我肯定必须能够将这个返回值映射到我的 POJO 中的属性???

最佳答案

结果映射用于遍历结果集。根据您的情况,您可以定义自己的 TypeHandler 来处理 NUMERIC 到 POJO 的映射。像这样的事情:

(#{numberSpReturns,jdbcType=NUMERIC, mode=OUT, javaType=myPOJO, typeHandler=yourTypeHandler})

关于java - MyBatis - 将存储过程输出参数值映射到 POJO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17883483/

相关文章:

java - 如何使用 XML 为我的测验制作者存储数据?

mysql - mysql的limits一般怎么用在iBatis上?

java - Java 中的静态 block - 最佳实践

mybatis - Spring Mybatis Oracle函数调用

java - 如何在创建对象之前处理大量必要的验证检查?

java - 如何以编程方式获取和设置 "Super Fast Charging"设置?

java - JTable、JComboBox 使用自定义对象

sql-server - 更改数据库中所有存储过程的 ANSI_NULLS 设置

java - Spring JDBC 和 MySQL 中无法使用 SET 关键字

存储过程中的mysql动态查询