π Sebuah aplikasi berbasis Java dengan paradigma OOP untuk mengelola data buku dengan database MySQL.
Aplikasi ini dikembangkan menggunakan Object-Oriented Programming (OOP) dengan struktur modular yang rapi. Fitur utama mencakup CRUD buku, pencarian, validasi data, serta Graphical User Interface (GUI) untuk kemudahan penggunaan.
- β¨ Fitur
- π Pengembangan Dari Sebelumnya
- π Struktur Proyek
- π Sebelum Menjalankan Program
- π Cara Menjalankan Aplikasi
- π§ Teknologi yang Digunakan
- π€ Kontribusi
- π Lisensi
β
Tambah Buku: Tambahkan buku baru dengan detail seperti judul, penulis, penerbit, dan tahun terbit.
β
Hapus Buku: Hapus buku dari sistem berdasarkan ID unik.
β
Daftar Buku: Tampilkan semua daftar buku yang tersimpan di database.
β
Validasi Data: Pastikan data buku sesuai aturan sebelum disimpan.
β
Cari Buku: Temukan buku berdasarkan keyword pencarian yang dimasukkan pengguna.
β
GUI Modern: Tidak lagi berbasis console, sekarang dengan tampilan lebih user-friendly.
β
Terintegrasi dengan MySQL: Data buku disimpan ke database MySQL, bukan file .txt lagi.
Proyek 2 merupakan pengembangan lanjutan dari Proyek 1.
| Proyek 1 | Proyek 2 |
|---|---|
| β Berbasis console | β Graphical User Interface (GUI) |
| β Data disimpan di file .txt | β Data disimpan di MySQL |
Proyek ini menggunakan pendekatan Separation of Concerns (SoC) untuk memisahkan tanggung jawab tiap komponen:
π entity/: Menyimpan class model Buku.java yang merepresentasikan data buku.
π repository/: Berisi BukuRepository untuk interaksi dengan database.
π service/: Menghubungkan antara controller dan repository.
π controller/: Mengelola alur data dari dan ke antarmuka pengguna.
π validation/: Menangani validasi input sebelum disimpan.
π view/: Menyediakan Graphical User Interface (GUI) bagi pengguna.
π utils/: Berisi fungsi tambahan seperti pengelolaan input/output.
- Pastikan MySQL sudah terinstall, bisa menggunakan XAMPP atau Laragon.
- Buat database
Perpustakaandi MySQL. - Jalankan SQL berikut untuk membuat tabel buku:
CREATE DATABASE Perpustakaan;
USE Perpustakaan;
CREATE TABLE buku (
id INT(3) AUTO_INCREMENT PRIMARY KEY,
judul VARCHAR(255) NOT NULL,
penulis VARCHAR(255) NOT NULL,
penerbit VARCHAR(255) NOT NULL,
tahun_terbit INT(4) NOT NULL
);
INSERT INTO buku (judul, penulis, penerbit, tahun_terbit) VALUES
('Bumi Manusia', 'Pramoedya Ananta Toer', 'Gramedia', 1980),
('Orang-Orang Biasa', 'Andrea Hirata', 'Bentang Pustaka', 2022),
('Laskar Pelangi', 'Andrea Hirata', 'Gramedia', 2005);- Pastikan JDK 8+ terinstall.
- Jalankan MySQL Server melalui PHPMyAdmin atau CLI.
- Jalankan file utama
Responsi2_PPBO_L0123068_SC.java. - Mulai mengelola buku melalui GUI aplikasi!
- β Java β Bahasa pemrograman utama.
- π MySQL β Database untuk menyimpan data buku.
- π¨ Java Swing β GUI yang modern dan interaktif.
- π MVC Architecture β Pemisahan logika aplikasi agar lebih terstruktur.
Kontribusi sangat diterima! Ikuti langkah berikut untuk berkontribusi:
- Fork repositori ini.
- Buat branch baru (
git checkout -b feature-xyz). - Lakukan perubahan dan commit (
git commit -m "Menambahkan fitur XYZ"). - Push branch ke GitHub (
git push origin feature-xyz). - Buka pull request, dan tunggu review! π
Proyek ini gratis untuk digunakan dan dimodifikasi untuk keperluan belajar dan pengembangan.
π‘ Keep Coding, Stay Awesome! π»β¨