0
我從iBatis的2升級到MyBatis的3ibatis的2至3的MyBatis轉換 - 道文件返回光標信息
該項目的過程中包含了許多道文件。我注意到一些直接返回數據,其他人將數據加載到out參數中。
例如,
theData = (List<SomeDataType>) getSqlMapClientTemplace().queryForList("getData", params);
與
getSqlMapClientTemplate().queryForList("getOtherData", params);
theData = (List<SomeOtherDataType>) params.get("out_cursor");
我覺得不同的是,沒有在映射了一個返回的數據沒有結果映射:
<parameter property="someData"
javaType="java.sql.ResultSet"
jdbcType="ORACLECURSOR"
mode="OUT" />
但有一個返回參數:
<parameter property="otherData"
javaType="java.sql.ResultSet"
jdbcType="ORACLECURSOR"
mode="OUT"
resultMap="getSomeOtherDataResult" />
問題是,MyBatis3允許第一個調用類型,還是一切都需要從第二個調用的參數中檢索?
在我的轉換後的DAO類,我用我的映射器類,如下所示:
MyMapper mapperForSession = getSqlSession().getMapper(MyMapperClass.class);
mapperForSession.getOtherData(params);
return (List<SomeOtherDataType>) params.get("out_cursor");