結果を「return@value」として返すMicrosoftとSybaseのストアドプロシージャがあります。SimpleJdbcCallを介してJavaから値を読み取る必要があります。
出来ますか?
結果を「return@value」として返すMicrosoftとSybaseのストアドプロシージャがあります。SimpleJdbcCallを介してJavaから値を読み取る必要があります。
出来ますか?
SqlOutPutParameters を使用してください:)
例を次に示します。
SimpleJdbcCall countryProcedure = new SimpleJdbcCall(dataSource)
.withoutProcedureColumnMetaDataAccess()
.withProcedureName(procedureName)
.declareParameters(new SqlOutParameter("RETURNCODE", Types.INTEGER))
.declareParameters(new SqlOutParameter("RETURNMSG", Types.VARCHAR));
Map result = countryProcedure.execute();
System.out.println("RETURNCODE: " + result.get("RETURNCODE"));
System.out.println("RETURNMSG: " + result.get("RETURNMSG"));
編集:私はそれを見ましたが、もっと簡単な方法があります。SimpleJdbcCall で WithReturnValue() を使用すると、戻り値が「return」キーの下の戻りマップに格納されます。
Spring は 2.x 以降、ストアド プロシージャを適切にサポートしています。
http://static.springsource.org/spring/docs/2.0.x/reference/jdbc.html
これらはあなたを整理できるはずです。