nice96:
私は、MySQLのDBに挿入する値を設定していたループのために複数持っています。
私の質問は意志insert.addBatch()です。それはforループの外にある場合、挿入値を検出します。以下の例は以下のとおりです。
List<String> lstUser = usageEvent.getUserName();
List<String> lstFullName = usageEvent.getFullName();
List<String> lstUserType = usageEvent.getUserType();
for(String userName : lstUser) {
insert.setString(1, userName);
}
for(String fullName : lstFullName) {
insert.setString(2, fullName);
}
for(String userType : lstUserType) {
insert.setString(3, userType);
}
insert.addBatch();
編集:私は値を取得するために、リストから文字列にキャストしていますことを示すために、上記の余分なコードを追加しました。私はこの質問へのアプローチを変更するかどうかわかりません。
ツアー:
あなたは、可能な限り多くのレコードとしてイテレータ、この挿入を使用している場合
Iterator<String> iUserName = idvEUserName.iterator();
Iterator<String> iFullName = idvEFullName.iterator();
Iterator<String> iUserType = idvEUserType.iterator();
while(iUserName.hasNext() && iFullName.hasNext() && iUserType.hasNext()) {
insert.setString(1, iUserName.next());
insert.setString(2, iFullName.next());
insert.setString(3, iUserType.next());
insert.addBatch();
}
insert.executeUpdate();