Rumah >Java >javaTutorial >Bagaimana untuk Menubuhkan Kolam Sambungan JDBC: C3P0, Pelayan Aplikasi atau javax.sql/java.sql?

Bagaimana untuk Menubuhkan Kolam Sambungan JDBC: C3P0, Pelayan Aplikasi atau javax.sql/java.sql?

Patricia Arquette
Patricia Arquetteasal
2024-12-15 08:19:10686semak imbas

How to Establish a JDBC Connection Pool: C3P0, Application Servers, or javax.sql/java.sql?

Penubuhan Kolam Sambungan JDBC

Penciptaan kolam sambungan menggunakan JDBC boleh didekati melalui pelbagai kaedah. Untuk aplikasi kendiri, C3P0 ialah pilihan yang boleh dipercayai. Kesederhanaannya ditunjukkan di bawah:

ComboPooledDataSource cpds = new ComboPooledDataSource();
cpds.setDriverClass("org.postgresql.Driver");
cpds.setJdbcUrl("jdbc:postgresql://localhost/testdb");
cpds.setUser("swaldman");
cpds.setPassword("test-password");

cpds.setMinPoolSize(5);
cpds.setAcquireIncrement(5);
cpds.setMaxPoolSize(20);

Sebagai alternatif, jika menggunakan pelayan aplikasi, adalah dinasihatkan untuk memanfaatkan kumpulan sambungan terbina dalamnya. Ini memerlukan konfigurasi dan mendapatkan semula DataSource melalui JNDI:

DataSource ds = (DataSource) new InitialContext().lookup("jdbc/myDS");

Mengapa Tidak javax.sql atau java.sql?

Walaupun javax.sql dan java.sql menyediakan pelaksanaan sambungan terkumpul, mereka menawarkan kelebihan dalam khusus konteks:

  • javax.sql.DataSource javax.sql ialah antara muka generik untuk mengakses sumber data, termasuk kumpulan sambungan. Ia membolehkan penggunaan gabungan sambungan merentas pemacu JDBC yang berbeza.
  • java.sql's javax.sql.PooledConnection ialah antara muka yang mewakili sambungan terkumpul. Ia menyokong pengumpulan sambungan dalam cara khusus vendor.

Walau bagaimanapun, untuk penyelesaian yang komprehensif dan fleksibel, kumpulan sambungan pihak ketiga seperti C3P0 atau DBCP lebih disukai, kerana ia menyediakan pilihan konfigurasi yang luas dan prestasi yang dioptimumkan di bawah beban berat.

Atas ialah kandungan terperinci Bagaimana untuk Menubuhkan Kolam Sambungan JDBC: C3P0, Pelayan Aplikasi atau javax.sql/java.sql?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn