0

値/オブジェクトのリストをパラメーターとして渡すことで、hibernate/jdbc を使用して Java コードを介して SQL サーバー上で作成されたストアド プロシージャを呼び出す方法はありますか? はいの場合、どうすればそれを達成できますか? 私はストアド プロシージャを呼び出す方法を知っていますが、これまでストアド プロシージャを使用して、バッチ更新/挿入を行うつもりなので、値の完全なリストではなく、いくつかのパラメーターのみを渡しました。私が次のようなことをしたら、それは理にかなっていますか?

getTemplate().getSessionFactory().getCurrentSession().createSQLQuery("CALL proc_insert(:list)").setParameterList("list", objList).executeUpdate();
4

1 に答える 1

1

これは役立つかもしれません

String getDBUSERByUserIdSql = "{call getDBUSERByUserId(?,?,?,?)}";
callableStatement = dbConnection.prepareCall(getDBUSERByUserIdSql);
callableStatement.setInt(1, 10);
callableStatement.registerOutParameter(2, java.sql.Types.VARCHAR);
callableStatement.registerOutParameter(3, java.sql.Types.VARCHAR);
callableStatement.registerOutParameter(4, java.sql.Types.DATE);

// execute getDBUSERByUserId store procedure
callableStatement.executeUpdate();

String userName = callableStatement.getString(2);
String createdBy = callableStatement.getString(3);
Date createdDate = callableStatement.getDate(4);

詳細については、クリックしてください

于 2013-09-17T10:18:16.563 に答える