tugas
Tugas 2: Rancang Bangun Backend RESTful API Layanan Reservasi Ruang Singgah dengan Spring Boot
Tugas 2: Rancang Bangun Backend RESTful API Layanan Reservasi Ruang Singgah dengan Spring Boot
Pengembangan sistem backend enterprise-ready berbasis Java Spring Boot untuk melayani platform reservasi akomodasi singgah sementara (Ruang Singgah), mengimplementasikan pola arsitektur Layered Architecture (Controller-Service-Repository).
1. Arsitektur Komponen Backend Spring Boot
- Controller Layer (
@RestController): Menyediakan endpoint RESTful API dengan standardisasi format HTTP verb (GET, POST, PUT, DELETE) dan pengembalian respons entitas HTTP (ResponseEntity<ApiResponse>). - Service Layer (
@Service): Menampung logika bisnis inti, validasi transaksi pemesanan, pengecekan ketersediaan jadwal kamar secara konkuren, dan kalkulasi tagihan. - Data Access Layer (
@Repository): Memanfaatkan Spring Data JPA dan Hibernate ORM untuk berinteraksi dengan database relasional menggunakan antarmukaJpaRepositorytanpa penulisan query SQL manual. - DTO Pattern & Object Mapping: Pemisahan tegas antara entitas basis data dengan transfer data API menggunakan Record DTO untuk mencegah kebocoran informasi (information leakage).
2. Fitur Endpoint RESTful yang Dikembangkan
GET /api/rooms: Menampilkan katalog ruang singgah dengan filter lokasi, rentang harga, dan fasilitas.POST /api/bookings: Melakukan reservasi kamar baru dengan validasi bentrok tanggal.PUT /api/bookings/{id}/confirm: Mengonfirmasi status pembayaran dan menerbitkan kode check-in.DELETE /api/bookings/{id}: Pembatalan reservasi dengan pembaharuan ketersediaan unit.
3. Berkas Tugas Terlampir
- Paket proyek utama aplikasi backend:
ruangSinggah.zipyang memuat skema konfigurasi Maven, JPA entities, controllers, dan service layer. - Proyek demonstrasi pendukung:
demo.zipyang memuat prototipe inisial struktur Spring Boot.