SimpleJdbcCall: получить результат вызова хранимой процедуры Microsoft / Sybase - PullRequest
2 голосов
/ 21 декабря 2010

У меня есть хранимые процедуры Microsoft и Sybase, которые возвращают результат как return @value. Мне нужно прочитать значение из Java через SimpleJdbcCall.

Возможно ли это?

Ответы [ 2 ]

5 голосов
/ 21 декабря 2010

Используйте 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"));

Редактировать : Я посмотрел на это, и есть более простой способ. Используйте WithReturnValue () на SimpleJdbcCall, и возвращаемое значение будет сохранено в карте возврата под ключом «return».

0 голосов
/ 21 декабря 2010

Spring прекрасно поддерживает хранимые процедуры начиная с версии 2.x:

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

Они должны быть в состоянии разобраться с вами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...