Tamat Masa Pangkalan Data dan Lebihan Pengumpulan Sambungan
Isu Hibernate ini, "com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Tiada operasi dibenarkan selepas sambungan ditutup," timbul apabila sambungan berterusan ditutup secara tersirat kerana ketidakaktifan.
Punca:
Sambungan diwujudkan tetapi kekal tidak aktif untuk tempoh lanjutan, melebihi "masa tunggu" pelayan atau tetapan tamat masa klien seperti "masa tamat sambungan".
Penyelesaian:
1. Laraskan Masa Tamat Pelayan dan Pelanggan:
2. Konfigurasi Pengumpulan Sambungan:
Contoh hibernate.cfg.xml Konfigurasi Menggunakan C3P0:
<code class="xml"><property name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property> <property name="c3p0.max_size">20</property> <property name="c3p0.min_size">5</property> <property name="c3p0.timeout">1800</property> <property name="c3p0.idleTestPeriod">3600</property> <property name="c3p0.maxIdleTime">3600</property></code>
Tambahan Petua:
Atas ialah kandungan terperinci Mengapa Saya Mendapat \'MySQLNonTransientConnectionException: Tiada operasi dibenarkan selepas sambungan ditutup\' dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!