Khi sử dụng nhóm kết nối, hãy gọi Connection#close()
không đóng kết nối một cách vật lý nhưng trả nó vào nhóm để sử dụng lại trong tương lai. Nói cách khác, kết nối vẫn mở và đó là toàn bộ điểm của việc sử dụng pool.
Chà, đó là vấn đề. Bạn đang tạo một SessionFactory
lặp đi lặp lại (mỗi người tạo nhóm riêng của mình) trong khi bạn chỉ nên tạo nó chỉ một lần trong suốt thời gian ứng dụng của bạn. Nếu bạn không sử dụng bất kỳ khung cụ thể nào, điều này thường được thực hiện trong một số lớp tiện ích (HibernateUtil
nổi tiếng lớp).
Hướng dẫn Hibernate chính thức có một ví dụ rất cơ bản về một lớp như vậy. Hoặc xem cái này phong phú hơn một chút.