JDBC テンプレートを使用しており、準備済みステートメントを使用してデータベースから読み取りたいと考えています。.csv ファイルの多くの行を繰り返し処理し、すべての行で、対応する値を使用していくつかの SQL 選択クエリを実行します。
データベースからの読み取りを高速化したいのですが、JDBC テンプレートをプリペアド ステートメントで動作させる方法がわかりません。
PreparedStatementCreatorとPreparedStatementSetterがあります。この例のように、両方とも匿名の内部クラスで作成されます。しかし、PreparedStatementSetter クラス内では、準備済みステートメントで設定したい値にアクセスできません。
私は.csvファイルを繰り返し処理しているので、それらを知らないため、それらを文字列としてハードコーディングすることはできません。また、コンストラクターの引数がないため、PreparedStatementSetter に渡すこともできません。また、値を final に設定するのもばかげています。
私は、準備済みステートメントの作成がかなり単純であることに慣れていました。何かのようなもの
PreparedStatement updateSales = con.prepareStatement(
"UPDATE COFFEES SET SALES = ? WHERE COF_NAME LIKE ? ");
updateSales.setInt(1, 75);
updateSales.setString(2, "Colombian");
updateSales.executeUpdate():
このJava チュートリアルのように。