Halo kita lanjutkan postingan sebelumnya tentang konsep batch processing di JDBC. Nah jadi kali ini saya mau langsung aja bahas yang Batch Processing ya supaya gak terlalu panjang klo belum ngerti konsepnya silangkan baca lagi dengan seksama setelah mengerti baru lanjut ke artikel ini. Kodingnya seperti berikut tapi asalkan data dalam tabel jurusan harus kosongkan dulu, klo ada databasenya silahkan hapus dengan query seperti berikut:
Halo kembali lagi saya mau nulis sesuatu tentang batch processing di JDBC, di postingan sebelumnya tentang transaction, itu aja belum cukup. klo anda perhatikan koding berikut:
// opeon connectiontry{// ngirim query ke databaseStringsql="INSERT INTO jurusan (id, nama) VALUES (?,?)";ps.executeUpdate();// ngirim lagi query ke databasesql="UPDATE jurusan SET id = ? WHERE nama = ?";ps.executeUpdate();// ngirim signal untuk disimpan secara permanenkoneksi.commit();koneksi.close();}catch(SQLExceptionex){System.err.println("query ke 2 dan 3 gagal disimpan");// error handling}
Dari koding tersebut kita ngirim query ke database sebanyak 2x, that is OK but how about more than 100x??? berapa banyak memory yang harus ditanggung CPU dan HDD? hal ini juga bakalan mengurangi performa aplikasi kamu karena anda akan membuka session di database sebanyak jumlah yang diopen. Maka dari itu kita butuh batch processing, yang jadi pertanyaan apa itu batch processing dan bagai mana cara kerjanya?
Halo, ok kita lanjutkan ya postingan sebelumnya yang telah membicarakan tentang konsep seberapa pentingnya menggunakan konsep transaction pada JDBC. Mari kita buktikan berdasarkan postingan tersebut.
Halo kembali lagi di blog saya, kalo dilihat-lihat udah lumayan panjang topik tentang JDBC ini mulai dari dasar CRUD terus kita udah memisahkan antara model dengan struktur JDBC menggunakan JavaBeans setelah itu kita melakukan modularisasi yang memisahkan antara struktural JDBC dengan menggunakan Data Akses Objek atau orang banyak bilang (DAO) dan yang terakhir kita melakukan externalisasi configurasi dengan properties. Nah jadi kali ini saya mau membahas tentang transaction, yang jadi pertanyaan apa itu transaction dan kenapa menggunakan transaction? padahal khan di materi sebelumnya khan it’s work fine!!
Halo kembali lagi di blog saya, Jadi kali ini saya mau membahas tentang externalisasi konfigurasi pada JDBC yaitu tujuannya adalah memudahkan untuk melakukan perubahan konfigurasi ketika aplikasi di deploy ke server sesungguhnya. Jadi klo kita perhatikan pada koding postingan sebelumnya seperti berikut:
@OverridepublicList<Jurusan>selectAll()throwsSQLException{Connectionkoneksi=DriverManager.getConnection("jdbc:mysql://localhost:3306/jdbc_mysql","root","admin");// logika select * from jurusanreturnnull;}@OverridepublicJurusansave(Jurusanjurusan)throwsSQLException{Connectionkoneksi=DriverManager.getConnection("jdbc:mysql://localhost:3306/jdbc_mysql","root","admin");// logika insert data jurusanreturnnull;}
Nah kalo anda perhatikan, setiap kita mau lakukan sesuatu ke database entah itu select, insert, update ataupun delete kita pasti ada koding seperti berikut:
Nah jadi ketika aplikasi di deploy khan otomatis kita harus menyesuaikan dengan alamat lokasi server magsudnya lokasi servernya juga gak mungkin localhost pasti diganti dengan ip address. jadi masalhnya khan kita harus ganti tuh semua yang ada dalam method getConnection(bla,bla,bla), maka dari itu supaya memudahkan kali ini kita akan melakukan externalisasi dengan menggunakan file properties.