Menjaga Connection
terbuka selamanya adalah ide yang sangat buruk. Itu tidak memiliki masa pakai yang tak ada habisnya, aplikasi Anda mungkin macet setiap kali DB kehabisan koneksi dan menutupnya. Praktik terbaik adalah memperoleh dan tutup Connection
, Statement
dan ResultSet
di terpendek kemungkinan cakupan untuk menghindari kebocoran sumber daya dan potensi kerusakan aplikasi yang disebabkan oleh kebocoran dan waktu tunggu.
Karena menghubungkan DB adalah tugas yang mahal, Anda harus mempertimbangkan untuk menggunakan kumpulan koneksi untuk meningkatkan kinerja koneksi. Server aplikasi/servletcontainer yang layak biasanya sudah menyediakan fitur kumpulan koneksi dalam rasa DataSource
JNDI . Lihat dokumentasinya untuk detail cara membuatnya. Untuk contoh Tomcat, Anda dapat menemukannya di sini.
Bahkan saat menggunakan kumpulan koneksi, Anda masih harus menulis kode JDBC yang benar:dapatkan dan tutup semua sumber daya dalam ruang lingkup sesingkat mungkin. Kumpulan koneksi pada gilirannya akan khawatir tentang benar-benar menutup koneksi atau melepaskannya kembali ke kumpulan untuk digunakan kembali lebih lanjut.
Anda mungkin mendapatkan lebih banyak wawasan dari artikel ini bagaimana melakukan dasar-dasar JDBC dengan cara yang benar. Sebagai alternatif yang sama sekali berbeda, pelajari EJB dan JPA. Ini akan mengabstraksi semua boilerplate JDBC untuk Anda menjadi oneliner.
Semoga membantu.
Lihat juga:
- Apakah aman menggunakan instance java.sql.Connection statis dalam sistem multithreaded?
- Apakah saya Menggunakan Penggabungan Koneksi JDBC?
- Bagaimana saya harus terhubung ke database/sumber data JDBC dalam aplikasi berbasis servlet?
- Kapan perlu atau nyaman untuk menggunakan Spring atau EJB3 atau semuanya secara bersamaan?