Tôi nên thích điều gì hơn khi cập nhật cơ sở dữ liệu? Các ưu điểm & chống lại với một trong hai phương pháp là gì và khi nào tôi sẽ sử dụng cái này hay cái kia?Entitymanager.flush() VS EntityManager.getTransaction(). Cam kết - Tôi nên thích điều gì?
public void disemployEmployee(Integer employeeId, Date endDate) {
Employee employee = (Employee)em.find("Employee", employeeId);
employee.getPeriod().setEndDate(endDate);
em.flush();
}
public void disemployEmployee(Integer employeeId, Date endDate) {
Employee employee = (Employee)em.find("Employee", employeeId);
em.getTransaction().begin();
employee.getPeriod().setEndDate(endDate);
em.getTransaction().commit();
}
Trong ví dụ đầu tiên không có giao dịch, do đó, có một ngoại lệ ném tại tuôn ra(). – DataNucleus
@DataNucleus Tôi nghĩ trong CMT, chúng tôi không phải bắt đầu/kết thúc giao dịch theo cách thủ công. –
chắc chắn nhưng anh ấy ở CMT? trong ví dụ khác của ông, ông bắt đầu txn, do đó, đó là giả định duy nhất tôi có thể làm cho – DataNucleus