0
你能給我一個在java中的示例代碼,如何正確使用休眠會話?我想要一個控制器類來處理所有的休眠操作(獲取,更新,刪除)。如何使用休眠會話處理
private void addPersonToEvent(Long personId, Long eventId) {
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
Person aPerson = (Person) session.load(Person.class, personId);
Event anEvent = (Event) session.load(Event.class, eventId);
aPerson.getEvents().add(anEvent);
session.getTransaction().commit();
}
這是正確的方法嗎?如何正確處理異常和回滾以避免連接池錯誤,如果連接在異常後沒有正確關閉,可能會如何?
非常感謝您
嘗試並捕獲異常..如果異常發生然後transaction.rollback – nachokk
如果只有它被記錄下來......等等! http://docs.jboss.org/hibernate/orm/4.2/manual/en-US/html_single/#transactions-demarcation-nonmanaged –
after the session.close()in finally block? – Benni