Rumah  >  Artikel  >  Java  >  Menggunakan JNDI untuk sambungan pangkalan data dalam pembangunan API Java

Menggunakan JNDI untuk sambungan pangkalan data dalam pembangunan API Java

WBOY
WBOYasal
2023-06-18 22:36:581203semak imbas

Gunakan JNDI untuk sambungan pangkalan data dalam pembangunan Java API

JNDI (Java Penamaan dan Antara Muka Direktori) ialah API standard dalam Java API untuk mengakses perkhidmatan penamaan dan direktori. Dalam pembangunan Java, JNDI digunakan secara meluas dalam pelbagai senario, termasuk mendapatkan objek dalam aplikasi, mencari EJB, menyambung ke pangkalan data, dll. Dalam artikel ini, kita akan membincangkan cara menggunakan JNDI untuk sambungan pangkalan data dalam pembangunan API Java.

  1. Mengkonfigurasi sumber data

Sebelum menggunakan JNDI untuk sambungan pangkalan data, kita perlu mengkonfigurasi sumber data pada pelayan aplikasi. Anda boleh menggunakan langkah berikut untuk mencipta dan mengkonfigurasi sumber data:

1) Buka konsol pelayan aplikasi, seperti halaman pengurusan Tomcat.

2) Cari halaman tetapan sumber data dalam konsol dan tetapkannya mengikut pelayan aplikasi tertentu.

3) Tambahkan maklumat pangkalan data untuk disambungkan, seperti nama pangkalan data, nama pengguna, kata laluan dan maklumat lain.

4) Konfigurasikan nama JNDI, iaitu nama JNDI yang akan ditetapkan untuk sumber data ini, digunakan untuk sambungan pangkalan data dalam aplikasi.

  1. Menggunakan JNDI untuk sambungan pangkalan data dalam Java API

Seterusnya, kami akan menggunakan contoh kod berikut untuk menggambarkan cara menggunakan JNDI untuk sambungan pangkalan data dalam Java API.

Pertama, kelas javax.naming.InitialContext perlu diperkenalkan dalam aplikasi untuk mengakses JNDI. Kedua, kami akan mendapatkan sumber data yang diprakonfigurasikan melalui kelas InitialContext.

Sebagai contoh, untuk mendapatkan sumber data yang dikonfigurasikan sebelum ini pada Tomcat, kita boleh menggunakan kod berikut:

// 创建 InitialContext
Context ctx = new InitialContext();

// 根据 JNDI 名称查找数据源
DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/myDataSource");

Dalam kod di atas, kita mula-mula mencipta objek InitialContext, dan kemudian menggunakan The kaedah lookup() objek mencari sumber data yang dibuat sebelum ini. Nama JNDI di sini ditentukan oleh "java:comp/env/jdbc/myDataSource".

Seterusnya, kita boleh menggunakan kaedah DataSource antara muka getConnection() untuk mendapatkan sambungan pangkalan data:

// 获取数据库连接
Connection conn = ds.getConnection();

Selepas mendapatkan sambungan, kita boleh menggunakan kaedah standard JDBC untuk beroperasi pangkalan data. Sebagai contoh, kita boleh menggunakan antara muka java.sql.PreparedStatement untuk melaksanakan pernyataan SQL:

// 预编译 SQL 语句
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM myTable");

// 执行 SQL 查询
ResultSet rs = pstmt.executeQuery();

// 处理查询结果
while (rs.next()) {
    // 读取查询结果
}
  1. Kesimpulan

JNDI ialah API standard dalam Java untuk mengakses perkhidmatan penamaan dan direktori. Aplikasi boleh digunakan untuk menyambung ke pangkalan data, mencari objek, mencari EJB, dll. Dalam pembangunan API Java, menggunakan JNDI untuk sambungan pangkalan data boleh mengurangkan penulisan kod berulang dengan berkesan dan meningkatkan kebolehselenggaraan dan kebolehskalaan aplikasi.

Dalam artikel ini, kami memperkenalkan cara menggunakan JNDI untuk sambungan pangkalan data dalam pembangunan API Java. Pertama, kita perlu mengkonfigurasi sumber data untuk digunakan pada pelayan aplikasi kemudian, kita menggunakan kelas InitialContext untuk mendapatkan sumber data pra-konfigurasi dan menyambung kepadanya. Akhir sekali, kita boleh menggunakan antara muka standard JDBC untuk mengendalikan pangkalan data.

Atas ialah kandungan terperinci Menggunakan JNDI untuk sambungan pangkalan data dalam pembangunan API Java. 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