You are here
Home > Programming > Android > Belajar CRUD Database Android Menggunakan Room : Membuat Fungsi Read Detail Data

Belajar CRUD Database Android Menggunakan Room : Membuat Fungsi Read Detail Data

Membuat Fungsi Read Detail Data pada Room Database Library di Android

Membuat Read Detail Data Activity

Oke pertama-tama kita akan membuat interface untuk menampilkan detail data yang kita ambil dari database. Buatlah sebuah class Activity bernama RoomReadSingelActivity.java, dan copy pastekan kode di bawah ini :

RoomReadSingleActivity.java

Activity itu hanya berfungsi untuk menampilkan data detail barang saja. Untuk XML layoutnya kita menggunakan layout yang sama dengan yang kita gunakan pada tutorial Create / Insert data.

Menambahkan Fungsi Select Detail Data pada Data Access Object

Setelah itu kita akan menambahkan fungsi untuk mengambil data tertentu dari database. Jika pada tutorial Read Data, kita menggunakan query select all, maka untuk mengambil detail data kita menggunakan query select + where, dimana kita hanya akan mengambil data barang berdasarkan id barang tertentu saja.

Buka class BarangDAO.java dan tambahkan kode di bawah ini :

Bisa dilihat pada codingan di atas kita menambahkan fungsi selectBarangDetail() yang menerima parameter masukan berupa id barang yang ingin kita select/ambil dari database. Pada fungsi tersebut kita menggunakan annotation @Query karena fungsi itu bukan fungsi bawaan dari Room Database Library dan supaya kita bisa menggunakan query SQLite pada fungsi tersebut. Di sini kita ingin mengambil data barang berdasarkan id barang, maka kita tinggal tulis query SQLite standard, yaitu select ditambah clause where barangId = id barang yang dimasukkan.

Membuat Read Detail Data Flow

Selanjutnya kita akan membuat flow untuk fungsi Read Detail Data. Untuk melakukan Read Detail Data, kita perlu masuk ke activity Read All data terlebih dahulu. Di sana kita akan tambahkan OnClickListener pada RecyclerViewyang menampilkan list semua data. Saat item pada RecyclerView diklik, aplikasi akan memanggil fungsi untuk men-query detail data dari database berdasarkan id barang, kemudian menyimpan hasilnya dalam bundle dan mem-passing nya ke activity Read Detail Data melalui Intent untuk kemudian ditampilkan datanya di activity tersebut.

Source code yang diperlukan untuk menambahkan OnClickListener dan membuat flow ini bisa dilihat di sini.

Memanggil Fungsi Read Detail Data

Jika langkah-langkah di atas sudah dilakukan, maka last step nya adalah memanggil fungsi Read Detail Data yang sudah kita tambahkan di DAO saat kita melakukan On Click pada salah satu item di list RecyclerView. Dengan terlebih dahulu menginisialisasi class AppDatabase.java yang sebelumnya sudah kita buat.

Codingan utamanya adalah seperti di bawah, kita tambahkan pada class AdapterBarangRecyclerView.java :

Inisialisasi AppDatabase :

Memanggil fungsi Read Detail Data pada saat kita melakukan click pada suatu item di RecyclerView, dengan id barang sebagai parameter masukan untuk menentukan barang mana yang ingin kita query dan tampilkan detailnya :

Saat fungsi di atas dijalankan, maka aplikasi akan membuka RoomReadSingleActivity dengan menyertakan data barang yang sudah diquery dalam bentuk Bundle pada Intent untuk ditampilkan.

Dan Seri Tutorial Android Database Room selesai. Untuk source code lengkap nya bisa download di GitHub gue .

Leave a Reply

Top