Bagaimana Menghubungkan ke Database MySQL Dengan Java

Bagaimana Menghubungkan ke Database MySQL Dengan Java

Jawa menyediakan JDBC (Konektivitas Basis Data Java) sebagai bagian dari Java SDK (Software Development Kit). Menggunakan ini API , sangat mudah untuk terhubung ke database relasional dan melakukan operasi umum seperti kueri, penyisipan, pembaruan, dan penghapusan catatan.





Sementara inti JDBC API termasuk dalam java, menghubungkan ke database tertentu seperti MySQL atau SQL Server memerlukan komponen tambahan yang dikenal sebagai driver database. Driver basis data ini adalah komponen perangkat lunak yang menerjemahkan panggilan inti JDBC ke dalam format yang dipahami oleh basis data itu.





kode berhenti: proses kritis mati

Pada artikel ini, mari kita lihat detail koneksi ke database MySQL dan cara melakukan beberapa kueri dengannya.





Pengandar Basis Data MySQL

Seperti yang telah dijelaskan di atas, untuk dapat terhubung ke database MySQL, Anda memerlukan driver JDBC untuk MySQL. Ini disebut driver Connector/J dan dapat diunduh dari situs MySQL di sini.

Setelah Anda mengunduh file ZIP (atau TAR.GZ), ekstrak arsip dan salin file JAR mysql-connector-java--bin.jar ke lokasi yang cocok. File ini diperlukan untuk menjalankan kode apa pun yang menggunakan Driver JDBC MySQL.



Membuat Contoh Basis Data

Dengan asumsi Anda telah mengunduh database MySQL dan atur dengan benar di mana Anda memiliki akses ke sana, izinkan kami membuat database sampel sehingga kami dapat menggunakannya untuk menghubungkan dan melakukan kueri.

Hubungkan ke database menggunakan klien pilihan Anda dan jalankan pernyataan berikut untuk membuat database sampel.





create database sample;

Kami juga memerlukan nama pengguna dan kata sandi untuk dapat terhubung ke database (kecuali jika Anda ingin terhubung sebagai administrator, yang umumnya merupakan ide yang buruk).

Berikut ini membuat pengguna bernama pengguna penguji siapa yang akan terhubung ke database MySQL dari mesin yang sama dengan yang menjalankannya (ditunjukkan oleh localhost ), menggunakan kata sandi amanpwd .





create user 'testuser'@'localhost' identified by 'securepwd';

Jika Anda terhubung ke database yang berjalan di komputer lain (bernama remotemc ), Anda perlu menggunakan yang berikut ( remotemc dapat berupa nama host atau alamat ip):

create user 'testuser'@'remotemc' identified by 'securepwd';

Sekarang nama pengguna dan kata sandi telah dibuat, kita perlu memberikan akses ke database sampel yang dibuat sebelumnya.

grant all on sample.* to 'testuser'@'localhost';

Atau, jika basis datanya jauh:

grant all on sample.* to 'testuser'@'remotemc';

Anda sekarang harus memverifikasi bahwa Anda dapat terhubung ke database sebagai pengguna yang baru saja Anda buat dengan kata sandi yang sama. Anda juga dapat menjalankan perintah berikut setelah terhubung, untuk memastikan semua izin sudah benar.

create table joe(id int primary key auto_increment, name varchar(25));
drop table joe;

Mengatur Jalur Kelas Java

Sekarang mari kita masuk ke detail tentang bagaimana menghubungkan ke MySQL dari Java. Langkah pertama adalah memuat driver database. Ini dilakukan dengan memanggil yang berikut di lokasi yang sesuai.

cara mendapatkan kartu perdagangan uap dengan cepat
Class.forName('com.mysql.jdbc.Driver');

Kode dapat menimbulkan pengecualian, sehingga Anda dapat menangkapnya jika Anda berniat untuk menanganinya (seperti memformat pesan kesalahan untuk GUI).

try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
// use the exception here
}

Sangat umum untuk memanggil kode ini di blok statis di kelas sehingga program segera gagal jika driver tidak dapat dimuat.

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
}

Tentu saja, untuk dapat menemukan driver, program harus dipanggil dengan driver JAR (didownload dan diekstrak di atas) yang termasuk dalam jalur kelas sebagai berikut.

java -cp mysql-connector-java--bin.jar:...

Menghubungkan ke MySQL Dari Java

Sekarang setelah kita menyelesaikan detail memuat driver MySQL dari java, mari kita sambungkan ke database. Salah satu cara untuk membuat koneksi database adalah dengan menggunakan Manajer Pengemudi .

String jdbcUrl = ...;
Connection con = DriverManager.getConnection(jdbcUrl);

Dan apa itu? jdbcUrl ? Ini menunjukkan detail koneksi, termasuk server tempat database berada, nama pengguna, dan sebagainya. Berikut adalah contoh URL untuk contoh kita.

String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=secrepwd';

Perhatikan bahwa kami telah menyertakan semua parameter yang diperlukan untuk koneksi, termasuk nama host ( localhost ), nama pengguna dan kata sandi. (Termasuk kata sandi seperti ini BUKAN praktik yang baik, lihat di bawah untuk alternatifnya.)

Menggunakan ini jdbcUrl , berikut adalah program lengkap untuk memeriksa konektivitas.

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
static public void main(String[] args) throws Exception
{
String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=securepwd';
Connection con = DriverManager.getConnection(jdbcUrl);
System.out.println('Connected!');
con.close();
}
}

Perhatikan bahwa koneksi database adalah sumber daya yang berharga dalam suatu program dan harus ditutup dengan benar seperti di atas. Kode di atas, bagaimanapun, tidak menutup koneksi jika terjadi pengecualian. Untuk menutup koneksi pada jalan keluar normal atau tidak normal, gunakan pola berikut:

try(Connection con = DriverManager.getConnection(jdbcUrl)) {
System.out.println('Connected!');
}

Seperti disebutkan di atas, adalah ide yang buruk untuk menyematkan kata sandi di URL JDBC. Untuk menentukan nama pengguna dan kata sandi secara langsung, Anda dapat menggunakan opsi koneksi berikut.

windows 10 penggunaan cpu 100%
String jdbcUrl = 'jdbc:mysql://localhost/sample';
try(Connection con = DriverManager.getConnection(jdbcUrl, 'testuser', 'securepwd')) {
}

Meminta Basis Data Dari Java

Sekarang setelah koneksi ke database dibuat, mari kita lihat cara melakukan kueri, seperti kueri versi database:

select version();

Sebuah query dieksekusi di java sebagai berikut. A Penyataan objek dibuat dan kueri dieksekusi menggunakan eksekusikueri() metode yang mengembalikan HasilSet .

String queryString = 'select version()';
Statement stmt = con.createStatement();
ResultSet rset = stmt.executeQuery(queryString);

Cetak versi dari HasilSet sebagai berikut. 1 mengacu pada indeks kolom dalam hasil, mulai dari 1.

while ( rset.next()) {
System.out.println('Version: ' + rset.getString(1));
}

Setelah memproses hasil, objek harus ditutup.

rset.close();
stmt.close();

Dan itu mencakup semua yang ada untuk menghubungkan ke MySQL dari java dan melakukan kueri sederhana.

Kunjungi juga kami lembar contekan perintah SQL .

Membagikan Membagikan Menciak Surel Apakah Boleh Menginstal Windows 11 pada PC yang Tidak Kompatibel?

Anda sekarang dapat menginstal Windows 11 pada PC lama dengan file ISO resmi... tetapi apakah itu ide yang baik untuk melakukannya?

Baca Selanjutnya
Topik-topik yang berkaitan
  • Pemrograman
  • Jawa
  • SQL
Tentang Penulis Jay Sridhar(17 Artikel Diterbitkan) More From Jay Sridhar

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan