ストアド プロシージャを呼び出すときは、次のコードを使用します。
connection = getConnection();
stmt = connection.prepareCall("{call MPLOGIN (?, ?, ?, ?, ?, ?)}");
stmt.setString("VUSCD", uscd);
stmt.setString("VPWD", pwd);
stmt.setString("VPCSQ", pcsq);
stmt.setString("VHWID", hwid);
stmt.registerOutParameter("VLOGID", OracleTypes.VARCHAR);
stmt.registerOutParameter("VKQ", OracleTypes.VARCHAR);
stmt.execute();
String vlogid = stmt.getString("VLOGID");
String vkq = stmt.getString("VKQ");
いくつかのプロシージャに対してこの退屈なラッパーを書くことは問題ではありませんが、何百ものプロシージャがある場合、それは本当に悪夢です この方法よりも簡単にストア プロシージャを呼び出す方法はありますか? 編集:DBからのプロシージャのパラメーターを使用するコードジェネレーターはエレガントな方法だと思いますが、Javaで何も検索しません