-1
私はデータベースに挿入するために多くの特殊文字があるので、私のコードでPreparedStatementを使用しています。preparedstatementへの効果的な入力
テーブルの中には多くの列があるため、一度に1つのパラメータを割り当てる必要があります。パラメータを指定する方が効率的か、より効果的ですか?
乾杯!
私はデータベースに挿入するために多くの特殊文字があるので、私のコードでPreparedStatementを使用しています。preparedstatementへの効果的な入力
テーブルの中には多くの列があるため、一度に1つのパラメータを割り当てる必要があります。パラメータを指定する方が効率的か、より効果的ですか?
乾杯!
あなたの問題が何であるかは完全にわかりません。
PreparedStatementにパラメータを個別に設定する必要があります。これは、PreparedStatementにデータベース内のさまざまなJavaオブジェクトを表す方法を伝える必要があるためです。
しかし、あなたはargsのObject []を渡すことができるクラス/メソッドを簡単に書くことができ、適切なインデックスとオブジェクトの処理でPreparedStatementに追加することができます。線に沿って
何か:
private static void setParameters(PreparedStatement stmt, Object[] args){
for (int i=0; i<args.length; i++){
setArgument(stmt, i+1, args[i]);
}
}
private static void setArgument(PreparedStatement stmt, int index, Object arg){
if (arg instanceof MyObject){
stmt.set[X](index, handleMyObject(arg));
}
}
オーバーキルは明らかに間違ってここに表現されます。人々の味が異なるので、「列の数が多い」とは何ですか? 10,20,50,100,1000? –
効率の面では、これがそれです。利便性の面では、独自のユーティリティコードを書く必要があります。 JDBCは主に未処理のパフォーマンスであり、利便性ではありません。 –