Vì vậy, hóa ra tôi đã thiếu một dòng khóa kích hoạt c3p0 (các thông số c3p0 tôi đang điều chỉnh không có tác dụng vì Hibernate đang sử dụng nó được tích hợp trong nhóm kết nối - điều mà nó cảnh báo là không phù hợp để sản xuất). Trong hibernate 2.x, đặt hibernate.c3p0.max_size
thuộc tính cho phép tổng hợp kết nối c3p0. Tuy nhiên, trong 3.x, bạn phải chỉ định thuộc tính sau -
<property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
Ngoài ra, đây là thông số cấu hình cuối cùng của tôi -
<property name="hibernate.c3p0.min_size">3</property>
<property name="hibernate.c3p0.max_size">5</property>
<property name="hibernate.c3p0.timeout">1800</property>
<property name="hibernate.c3p0.idle_test_period">100</property> <!-- seconds -->
Khá đáng tiếc là cả Hibernate và c3p0 đều có tài liệu khó hiểu về vấn đề này.