jdbc如何取得存储过程return返回值

存储过程:
    CREATE PROCEDURE [test]
(@Name nvarchar(50))
AS
begin
  insert into testTable(Name)  values(@Name )
   return @@IDENTITY
   end
GO

  得到返回值用什么?
____________________________________________________

用方法改为:
CallableStatement cstmt = conn.prepareCall("{?=call test(?)}");
cstmt.registerOutParameter(1,java.sql.Types.INTEGER);
cstmt.setString(2, "Name");
cstmt.executeUpdate();
testTableID=cstmt.getInt(1);

______________________________________

jdbc调存储过程:
1.out,inout参数必须registerOutParameter一下。
2.返回值用CallableStatement.get(int )取得
3.如可驱动支持,可将游标return ,将强制转换为resultSet进行操作。
4.如果返回多个结果集,则必须取完所有结果集后,最后取out参数
5.jdbc会自动依相应类型自动处理值为null的字段为相应的java类型。


原文地址:https://www.cnblogs.com/zhuor/p/383175.html