Langsung ke konten utama

Database Akademik

Hai! Posting kali ini menggunakan bahasa Indonesia. Hari ini kita akan membuat sebuah database untuk kebutuhan akademik dengan BlueJ.
Fitur-fitur yang akan ditambahkan adalah:
  • Penambahan data mahasiswa, dosen, pegawai
  • Pengambilan dan drop mata kuliah dan kelas
  • Peminjaman dan pengembalian buku
Ini adalah tampilan dari struktur kelas yang akan kita pakai.



Berikut source code untuk tiap kelas tersebut:
  1. Database

  2.  import java.util.ArrayList;  
       
     /**  
      * Write a description of class database here.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (18/11/2018)  
      */  
     public class database {  
       private ArrayList<peminjam> anggota;  
         
       public database() {  
         anggota = new ArrayList<peminjam>();  
       }  
         
       public void addPeminjam(peminjam peminjamnya) {  
         anggota.add(peminjamnya);  
       }  
         
       public void listPeminjam() {  
         for(peminjam orang : anggota) {  
           orang.identitas();  
           System.out.println();  
         }  
       }  
         
       public void hapusPeminjam(peminjam peminjamnya) {  
         anggota.remove(peminjamnya);  
       }  
     }  
       
    

  3. Peminjam

  4.  import java.util.ArrayList;  
       
     /**  
      * Write a description of class peminjam here.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (18/11/2018)  
      */  
     public class peminjam {  
       private String nama;  
       private String alamat;  
       private int umur;  
       private ArrayList<buku> bk;  
       public peminjam(String namamu, String alamatmu, int umurmu) {  
         nama = namamu;  
         alamat = alamatmu;  
         umur = umurmu;  
         bk = new ArrayList<buku>();  
       }  
         
       public void pinjamBuku(buku bukunya) {  
         bk.add(bukunya);  
       }  
         
       public void kembalikanBuku(buku bukunya) {  
         bk.remove(bukunya);  
       }  
         
       public void identitas() {  
         System.out.println("Nama: " + nama);  
         System.out.println("Alamat: " + alamat);  
         System.out.println("Umur: " + umur);  
       }  
         
       public void print() {  
         identitas();  
         System.out.println("Buku yang dipinjam: ");  
         for(buku bukumu : bk) {  
           System.out.println(bukumu.getBuku());  
         }  
       }  
         
       public String getNama() {  
         return nama;  
       }  
     }  
       
    

  5. Mahasiswa

  6.  import java.util.ArrayList;  
       
     /**  
      * Write a description of class Mahasiswa here.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (18/11/2018)  
      */  
     public class mahasiswa extends peminjam {  
       private String nrp;  
       private ArrayList<matkul> mk;  
       public mahasiswa(String namamu, String nrpmu, String alamatmu, int umurmu) {  
         super(namamu, alamatmu, umurmu);  
         nrp = nrpmu;  
         mk = new ArrayList<matkul>();  
       }  
         
       public void addMK(matkul matkulmu) {  
         mk.add(matkulmu);  
       }  
         
       public void dropMK(matkul matkulmu) {  
         mk.remove(matkulmu);  
       }  
         
       public void detail() {  
         System.out.println("NRP: " + nrp);  
         System.out.println("Pekerjaan: Mahasiswa");  
         super.print();  
         for(matkul matkulmu : mk) {  
           System.out.println("Mata Kuliah: " + matkulmu.getMatkul());  
           System.out.println("Kelas: " + matkulmu.getKelasnya());  
           System.out.println("Ruang: " + matkulmu.getRuangnya());  
           System.out.println("Dosen: " + matkulmu.getDosennya());  
         }  
       }  
     }  
       
    

  7. Dosen

  8.    
     /**  
      * Write a description of class Dosen here.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (18/11/2018)  
      */  
     public class dosen extends peminjam {  
       private String nip;  
       public dosen(String namanya, String nipnya, String alamatnya, int umurnya) {  
         super(namanya, alamatnya, umurnya);  
         nip = nipnya;  
       }  
         
       public String getDosen() {  
         return nip;  
       }  
         
       public void detail() {  
         System.out.println("NIP: " + nip);  
         System.out.println("Pekerjaan: Dosen");  
         super.print();  
       }  
     }  
       
    

  9. Pegawai

  10.    
     /**  
      * Write a description of class Pegawai here.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (18/11/2018)  
      */  
     public class pegawai extends peminjam {  
       private String nid;  
       public pegawai(String namanya, String nidnya, String alamatnya, int umurnya) {  
         super(namanya, alamatnya, umurnya);  
         nid = nidnya;  
       }  
         
       public String getNID() {  
         return nid;  
       }  
         
       public void detail() {  
         System.out.println("NID: " + nid);  
         System.out.println("Pekerjaan: Pegawai");  
         super.print();  
       }  
     }  
       
    

  11. Matkul

  12.    
     /**  
      * Write a description of class Matkul here.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (18/11/2018)  
      */  
     public class matkul {  
       private String kode;  
       private String mk;  
       private int sks;  
       private char kelasku;  
       private String ruangan;  
       private String dosen;  
         
       public matkul(String kodenya, String matkulnya, int sksnya, kelas kelasnya, dosen dosennya) {  
         kode = kodenya;  
         mk = matkulnya;  
         sks = sksnya;  
         kelasku = kelasnya.getKelas();  
         ruangan = kelasnya.getRuang();  
         dosen = dosennya.getDosen();  
       }  
         
       public String getMatkul() {  
         return mk;  
       }  
         
       public char getKelasnya() {  
         return kelasku;  
       }  
         
       public String getRuangnya() {  
         return ruangan;  
       }  
         
       public String getDosennya() {  
         return dosen;  
       }  
         
       public void print() {  
         System.out.println("Kode: " + kode);  
         System.out.println("Mata Kuliah: " + mk);  
         System.out.println("SKS: " + sks);  
       }  
     }
    

  13. Kelas

  14.    
     /**  
      * Write a description of class Kelas here.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (18/11/2018)  
      */  
     public class kelas {  
       private char namaKelas;  
       private String ruang;  
         
       public kelas(char kelasnya, String ruangnya) {  
         namaKelas = kelasnya;  
         ruang = ruangnya;  
       }  
         
       public char getKelas() {  
         return namaKelas;  
       }  
         
       public String getRuang() {  
         return ruang;  
       }  
     }  
       
    

  15. Buku

  16.    
     /**  
      * Write a description of class Buku here.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (18/11/2018)  
      */  
     public class buku {  
       private String judul;  
       private String penulis;  
       private String penerbit;  
       private int tahun;  
       public buku(String judulnya, String penulisnya, String penerbitnya, int tahunnya) {  
         judul = judulnya;  
         penulis = penulisnya;  
         penerbit = penerbitnya;  
         tahun = tahunnya;  
       }  
         
       public String getBuku() {  
         return judul;  
       }  
     }  
       
    

    Ketika sudah selesai mencantumkan semua source code tersebut, klik kanan pada kelas Database lalu klik new database(). Lalu klik OK.


    Di sini akan saya jelaskan cara menggunakan program yang sudah kita buat berdasarkan fitur-fitur yang telah disebutkan di atas.
    • Penambahan data mahasiswa, dosen, pegawai
    Untuk mahasiswa, klik kanan pada kelas Mahasiswa lalu klik new mahasiswa(...), kemudian isikan data identitasnya seperti contoh pada gambar.



    Untuk dosen dan pegawai, stepnya kurang lebih sama, bedanya hanya klik kanan pada kelasnya masing-masing (Dosen pada kelas Dosen, Pegawai pada kelas Pegawai).

    Kamu bisa menambah instansi mahasiswa/dosen/pegawai yang telah kamu buat ke dalam database peminjaman dengan cara mengklik kanan kelas Database, lalu klik method listPeminjam(). Kurang lebih akan muncul seperti ini.



    Kamu bisa juga menghapus mahasiswa/dosen/pegawai dari database dengan mengklik hapusPeminjam() pada kelas Database.
    • Pengambilan dan drop mata kuliah dan kelas
    Buatlah instansi kelas baru dengan cara mengklik kanan kelas Kelas lalu klik new kelas(...), kemudian isi detailnya seperti ini.


    Kemudian klik kanan kelas Matkul lalu klik new matkul(...). Isi detail mata kuliah yang ingin dibuat, misalnya seperti contoh pada gambar.


    Klik kanan pada instansi Mahasiswa (box merah), lalu klik addMK(). Isi dengan nama instansi mata kuliah yang sudah kalian buat. Setelah klik OK, instansi mata kuliah tersebut akan berhasil dimasukkan ke dalam list mata kuliah pada mahasiswa tersebut.


    Untuk mengetahui apakah kalian berhasil melakukannya, cek dengan mengklik kanan instansi Mahasiswa lalu klik detail(). Maka akan tampil identitas mahasiswa beserta mata kuliah yang baru saja ditambahkan.


    Untuk mengdrop mata kuliah, hanya perlu klik dropMK() sebagai ganti dari addMK(). Maka nama instansi mata kuliah yang kamu masukkan akan dihapus dari list.
    • Peminjaman dan pengembalian buku
    Buatlah sebuah instansi buku terlebih dahulu dengan mengklik kanan kelas Buku, kemudian klik new buku(...). Isi detail yang diperlukan, misalkan seperti pada gambar.


    Kemudian klik kanan instansi mahasiswa yang sudah kalian buat sebelumnya, cari "inherited from peminjam", kemudian cari pinjamBuku(...). Isilah dengan nama instansi buku yang ingin kalian masukkan ke dalam peminjaman.

    Klik method details() pada kelas mahasiswa tersebut untuk melihat hasilnya.

    Terima kasih dan sampai ketemu di posting berikutnya.


Komentar

Postingan populer dari blog ini

Tugas 1 PBO A

This is my biodata compiled in Java (first time usage). Check it out! /** * Program membuat biodata menggunakan Java - BlueJ * * Author : Elkana Hans W * Version 1 , Date : 3 September 2018 */ public class biodata{ public biodata(){ System.out.print("PBO-Tugas1\n"); System.out.print("Nama\t: Elkana Hans Widersen\n"); System.out.print("Kelas\t: PBO A\n"); System.out.print("Alamat Rumah: Merak III/P2-104 Rewwin\n"); System.out.print("Email\t: elknhns@gmail.com\n"); System.out.print("Blog\t: elkanahans.blogspot.com\n"); System.out.print("No HP/WA: 082143646716\n"); System.out.print("Twitter\t: @elknhns\n"); } }

Tugas 3 PBO A

Hey guys! This time I have been working on making my own Ticket Machine using BlueJ. I am using 2 classes, which is Main and TicketMachine . TicketMachine /* * This class contains the declaration of the Ticket Machine we are going to use.. * * @author (Elkana Hans Widersen) * @version (17/9/2018) */ import java.util.Scanner; public class TicketMachine{ Scanner scan = new Scanner(System.in); // The price of a ticket from this machine. private int price; // The amount of money entered by a customer so far. private int balance; // The amount of tickets about to be printed. private int ticket; // The total amount of money collected by this machine. private int total; /* * Create a machine that issues tickets of the given price. * Note that the price must be greater than zero, and there * are no checks to ensure this. */ public TicketMachine(int ticketCost){ ...

GUI: Image Viewer V3

Hi guys! In this post, we will make an Image Viewer v3 with GUI Programming. This is the classes we need to make the program: ImageViewer ImagePanel ImageFileManager OFImage Filter LighterFilter DarkerFilter ThresholdFilter FishEyeFilter Here is the source code for each of those classes ImageViewer import java.awt.*; import java.awt.event.*; import java.awt.image.*; import javax.swing.*; import javax.swing.border.*; import java.io.File; import java.util.List; import java.util.ArrayList; import java.util.Iterator; /** * ImageViewer is the main class of the image viewer application. * It builds and displays the application GUI and * initializes all other components. * * @author (Elkana Hans Widersen) * @version 1.0 */ public class ImageViewer { // static fields: private static final String version = "Version 3.0"; private static JFileChooser fileChooser = new JFileChooser(System.getP...