Tôi có nền tảng dựa trên Hibernate, được xây dựng từ các servlet không trạng thái (được sử dụng để đăng ký người dùng và phần còn lại để truy vấn db).Quản lý phiên với Java Hibernate
Tôi đang sử dụng phiên Hibernate như sau:
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
if ((null == session) || (session.isOpen() == false)) {
session = HibernateUtil.getSessionFactory().openSession();
}
Hiện nay tôi không đóng phiên ở phần cuối của servlet để tránh openSession()
gọi (cố gắng sử dụng phiên mở nếu có thể).
Phương pháp hay nhất là gì? khi nào tôi phải đóng các phiên này?
Bạn có thể đưa ra ví dụ không?
Cảm ơn trước!
Tôi đồng ý rằng một phiên cho toàn bộ ứng dụng là một ý tưởng tồi, nhưng làm thế nào về việc phiên hiện tại cho mỗi yêu cầu thay vì phiên gần mở, đặc biệt là khi bạn đang áp dụng mùa xuân và ngủ đông với nhau? – Shilan