"John"という名前の従業員セットを削除するには、以下の2つの方法を検討してください。休止状態のDelete()およびDeleteall()
List<Employee> list = new ArrayList<Employee>();
String query= " from Employee emp where emp.name = 'John'";
list=getHibernateTemplate().find(query);
まず方法:
getHibernateTemplate().deleteAll(list);
第2の方法:
Iterator<BulkChangeRequest> itList = list.iterator();
while(itList.hasNext()) {
Employee emp = itList.next();
getHibernateTemplate().delete(emp);
}
彼らはパフォーマンスの面で大きく異なるのですか?両方とも本質的に同じですか、つまり、deleteAllメソッドは行を1つずつ削除しますか?
また、次のクエリを使用してSQLでそれを行う方が良いでしょうか?
" delete from Employee where name = 'John'"
はい私はそう考えていましたが、最初の2つの方法(delete()とdeleteAll())の間に違いはありますか? – Chillax
更新された回答を確認してください。 – nIKUNJ