Ada banyak DBMS (DataBase Management System) yang beredar di pasaran. Setiap merk mempunyai kelebihan dan kekurangan tersendiri. Namun semua DBMS pasti sudah memiliki operasi-operasi query yang sudah dioptimalisasi dalam berbagai kondisi. Database dan operasi yang ada pun dapat diakses menggunakan bahasa pemrograman yang Anda gunakan, selama driver-nya tersedia.
Salah satu DBMS yang cukup banyak digunakan adalah MySQL. Hal ini salah satunya karena MySQL menyediakan versi gratis yang cukup powerful, dengan dukungan driver untuk berbagai bahasa pemrograman, serta cukup ringan untuk dijalankan. Instalasi MySQL bisa dilakukan secara terpisah maupun dalam paket web server seperti XAMPP maupun WAMP. Dalam artikel ini, yang digunakan adalah MySQL yang ada dalam paket server XAMPP.
Koneksi database bisa lebih mudah dilakukan dengan menggunakan IDE seperti NetBeans. Dengan IDE tersebut, Anda tidak perlu mencari driver yang akan digunakan untuk mengakses database. Dalam artikel ini juga digunakan NetBeans sebagai alat bantu koneksi database. Namun demikian, driver tersebut juga bisa didapatkan secara terpisah di http://www.mysql.com/downloads/connector/j/.
Berikut beberapa langkah pemrograman Java menggunakan database.
- Buatlah sebuah project pada NetBeans. Pada struktur project
tersebut, terdapat dua folder di bawahnya, yaitu Source Packages dan
Libraries. Klik kanan pada Libraries, dan pilih menu “Add Library”.
- Sebuah jendela dialog akan muncul. Pilih MySQL JDBC Driver, lalu
klik Add Library. Pastikan setelah proses tersebut, di dalam folder
Libraries sebelumnya terdapat sebuah library tambahan.
- Sebelum memulai koneksi, jangan lupa aktifkan dahulu MySQL server
Anda. Setelah itu, untuk mengetes apakah Driver bisa digunakan, ketikkan
kode sebagai berikut.
123456789101112
public
class
DatabaseTest {
public
static
void
main(String[] args) {
try
{
Class.forName(
"com.mysql.jdbc.Driver"
).newInstance();
System.out.println(
"Driver berhasil diload"
);
}
catch
(ClassNotFoundException ex) {
}
catch
(InstantiationException ex) {
}
catch
(IllegalAccessException ex) {
}
}
}
- Setelah itu, untuk membuat koneksi, dapat dilakukan dengan class
Connection. Namun pembuatannya tidak dengan menginisialisasi secara
biasa, melainkan sudah ada method getConnection() dari class
DriverManager untuk mendapatkan object koneksi, seperti kode berikut
ini.
1234567891011121314151617
import
java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.SQLException;
public
class
DatabaseTest {
public
static
void
main(String[] args) {
try
{
String username =
"xml_web"
;
String password =
"xml_web"
;
Connection connect = DriverManager.getConnection(path, username, password);
System.out.println(
"Koneksi sukses"
);
}
catch
(SQLException ex) {
}
}
}
- Untuk mengeksekusi perintah SQL, class yang digunakan adalah
Statement. Class ini menyimpan perintah-perintah SQL seperti SELECT,
INSERT, UPDATE, dan DELETE untuk kemudian dieksekusi. Object statement
didapatkan dari koneksi yang telah dibuat sebelumnya. Misalkan, ada
table seperti pada gambar.
Untuk memasukkan data baru, Anda bisa melakukan seperti contoh berikut ini.123456789101112131415161718192021222324import
java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.SQLException;
import
java.sql.Statement;
public
class
DatabaseTest {
public
static
void
main(String[] args) {
try
{
String username =
"xml_web"
;
String password =
"xml_web"
;
Connection connect = DriverManager.getConnection(path, username, password);
Statement statement = connect.createStatement();
String query =
"INSERT INTO users "
+
"(email, username, password, last_login) "
+
"VALUES "
+
"('admin@admin.com', 'admin', 'asdfwerg123', NULL);"
;
statement.executeUpdate(query);
System.out.println(
"Penambahan data sukses"
);
}
catch
(SQLException ex) {
}
}
}
- Cara di atas sama untuk perintah UPDATE dan DELETE. Anda hanya cukup
menerapkan SQL biasa di dalam statement. Sedangkan untuk proses SELECT,
eksekusi query akan mereturn sebuah object, yaitu ResultSet. Object ini
menyimpan data hasil query SELECT dalam bentuk Collection Iterable.
Berikut contoh kode programnya.
12345678910111213141516171819202122232425262728
import
java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.ResultSet;
import
java.sql.SQLException;
import
java.sql.Statement;
public
class
DatabaseTest {
public
static
void
main(String[] args) {
try
{
String username =
"xml_web"
;
String password =
"xml_web"
;
Connection connect = DriverManager.getConnection(path, username, password);
Statement statement = connect.createStatement();
String query =
"SELECT email, username, password, last_login FROM users;"
;
ResultSet result = statement.executeQuery(query);
while
(result.next()) {
String data = result.getString(
"email"
);
data +=
" | "
+ result.getString(
"username"
);
data +=
" | "
+ result.getString(
"password"
);
data +=
" | "
+ result.getString(
"last_login"
);
System.out.println(data);
}
}
catch
(SQLException ex) {
}
}
}
12me
@haqqi
.net | haqqi | 34hr2o234k2h34h |
null
admin
@admin
.com | admin | asdfwerg123 |
null
- Cara lain untuk membuat statement adalah menggunakan class
PreparedStatement. Fungsinya hampir sama dengan Statement biasa, namun
class ini menyediakan sebuah template query yang mana parameternya bisa
dimasukkan pada baris berikutnya, seperti berikut ini.
12345678
PreparedStatement statement = connect.prepareStatement(
"INSERT INTO users "
+
"(email, username, password, last_login) "
+
"VALUES "
+
"(?, ?, ?, ?);"
);
statement.setString(
1
,
"test@test.com"
);
statement.setString(
2
,
"test"
);
statement.setString(
3
,
"d7fj23hfos74"
);
statement.setString(
4
,
null
);
statement.executeUpdate();
- Cara yang sama dengan PreparedStatement juga bisa digunakan untuk mendapatkan ResultSet dengan query SELECT dan eksekusi method executeQuery().
Artikel ini pernah dipublikasikan oleh Penulis di tabloid PC Mild edisi 10/2011 lalu.
Sumber: Bisa Komputer
No comments:
Post a Comment