2

select アノテーションを使用してストア プロシージャを呼び出しており、OUT パラメータが 1 つあります。しかし、私はそのプロパティを設定していません。mybatis3アノテーションでプロパティマッピングなしでOUTパラメータを取得することは可能ですか?

4

1 に答える 1

0

Out パラメーターを使用してストアド プロシージャを呼び出すには、次のようにします。

マッパー:

@Select("{ CALL SABIUS.GI_ACESSO_PORTAL.VALIDA_CARTEIRA_USUARIO("
+ "#{map.param1, mode=IN, jdbcType=INTEGER },"
+ "#{map.param2, mode=IN, jdbcType=INTEGER },"
+ "#{map.param3, mode=IN, jdbcType=INTEGER },"
+ "#{map.paramOUT, mode=OUT, jdbcType=INTEGER }" + ") }")
@Options(statementType = StatementType.CALLABLE)
public void methodCall(@Param("map") Map<String, Object> mapParameters);

DAOで

Map<String, Object> mapParameters = new HashMap<String, Object>();
mapParameters.put("param1", 123);
mapParameters.put("param2", 234);
mapParameters.put("param3", 345);

mapper.methodCall(mapParameters);
return mapParameters.get("paramOUT");

ハッシュマップは、out パラメータ名で更新されます。

[] 秒

于 2014-11-05T14:08:43.503 に答える