2

結果を「return@value」として返すMicrosoftとSybaseのストアドプロシージャがあります。SimpleJdbcCallを介してJavaから値を読み取る必要があります。

出来ますか?

4

2 に答える 2

5

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」キーの下の戻りマップに格納されます。

于 2010-12-21T13:40:50.323 に答える
0

Spring は 2.x 以降、ストアド プロシージャを適切にサポートしています。

http://static.springsource.org/spring/docs/2.0.x/reference/jdbc.html

これらはあなたを整理できるはずです。

于 2010-12-21T13:37:18.760 に答える