Dalam bidang sambungan pangkalan data, arahan Class.forName("oracle.jdbc.driver.OracleDriver ") telah menjadi kebingungan bagi ramai orang. Apakah fungsi yang sebenarnya dilakukannya? Dan, adakah terdapat pendekatan alternatif untuk mencapai objektif yang sama?
Kaedah Class.forName() pada dasarnya memperoleh rujukan kepada objek kelas yang sepadan dengan yang disediakan Fully Nama Kelas Berkelayakan (FQCN). Dalam kes kami, ia adalah pemacu Oracle JDBC (oracle.jdbc.driver.OracleDriver).
Walau bagaimanapun, bertentangan dengan kepercayaan popular, Class.forName() tidak mempunyai penglibatan langsung dalam proses sambungan pangkalan data. Peranan utamanya adalah untuk memastikan kelas pemandu yang ditentukan dimuatkan ke dalam pemuat kelas semasa. Langkah ini adalah penting untuk permulaan pemacu dan penubuhan sambungan seterusnya.
Sebagai ganti Class.forName(), Java 4.0 memperkenalkan mekanisme alternatif untuk memuatkan pemacu JDBC. Mana-mana pemandu yang mematuhi yang disertakan dalam laluan kelas dimuatkan secara automatik, menjadikan Class.forName() berlebihan untuk pemandu tersebut.
Sebelum Java 4.0, Class.forName() ialah kaedah standard untuk memuatkan pemandu. Perlu diingat bahawa pergantungan pada Class.forName() selalunya menunjukkan pangkalan kod lama, kerana pelaksanaan JDBC moden mengutamakan pemuatan pemacu automatik.
Untuk penerokaan Class.forName( yang lebih mendalam. ) dan implikasinya dalam konteks yang berbeza, sila rujuk sumber tambahan berikut:
Atas ialah kandungan terperinci Mengapakah Class.forName() Penting dalam Ketersambungan Pangkalan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!