Anda di halaman 1dari 169

PERANCANGAN APLIKASI PENERIMAAN SISWA BARU DENGAN

METODE RAPID APPLICATION DEVELOPMENT PADA TK MUNNA


BERBASIS JAVA

Skripsi/Tugas Akhir
diajukan untuk melengkapi
persyaratan mencapai
gelar sarjana

NAMA : NITA AMELIA

NPM : 201943501652

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS INDRAPRASTA PGRI
2023
LEMBAR PERSETUJUAN UJIAN SKRIPSI / TUGAS AKHIR

Nama : Nita Amelia

NPM : 201943501652

Program Studi : Teknik Informatika

Fakultas : Teknik dan Ilmu Komputer

Judul : Perancangan Aplikasi Penerimaan Siswa Baru dengan

Metode Rapid Application Development pada TK

MUNNA Berbasis Java

Telah diperiksa dan disetujui untuk diujikan

Pembimbing Materi Pembimbing Teknik

Za’imatun Niswati , S.Pt., M.Pd., M.Kom. Rita Karmila Sari, S.Pd., M.Hum.

i
LEMBAR PENGESAHAN

Nama : Nita Amelia

NPM : 201943501652

Program Studi : Teknik Informatika

Fakultas : Teknik dan Ilmu Komputer

Judul : Perancangan Aplikasi Penerimaan Siswa Baru

dengan Metode Rapid Application Development

pada TK MUNNA Berbasis Java

PANITIA UJIAN

Ketua : Prof. Dr. H. Sumaryoto (...................................)

Sekretaris : Ir. H. Soepardi Harris, M.T. (...................................)

Anggota :

No Nama Tanda Tangan

1.

2.

3.

ii
LEMBAR PERNYATAAN

Yang bertandatangan di bawah ini :

Nama : Nita Amelia

NPM : 201943501652

Program Studi : Teknik Informatika

Dengan ini menyatakan bahwa skripsi/tugas akhir dengan judul “Perancangan

Aplikasi Penerimaan Siswa Baru dengan Metode Rapid Application

Development pada TK MUNNA Berbasis Java” beserta seluruh isinya adalah

benar-benar karya saya sendiri. Saya tidak melakukan penjiplakan atau

pengutipan dengan cara-cara yang tidak sesuai dengan etika ilmu yang berlaku

dalam masyarakat keilmuan. Atas pernyataan ini, saya siap menanggung

risiko/sanksi apabila dikemudian hari ditemukan adanya pelanggaran etika

keilmuan atau ada klaim dari pihak lain terhadap keaslian karya saya ini sesuai

dengan Undang-undang Republik Indonesia Nomor 20 Tahun 2003 tentang

Sistem Pendidikan Nasional Bab VI Pasal 25 ayat 2 dan Bab XX Pasal 70.

Demikian pernyataan ini saya buat untuk dimanfaatkan sesuai dengan keperluan.

Jakarta, Agustus 2023


Yang menyatakan,

Nita Amelia

iii
ABSTRAK

A. Nita Amelia, NPM : 201943501652


B. Perancangan Aplikasi Penerimaan Siswa Baru dengan Metode Rapid
Application Development pada TK MUNNA Berbasis Java. Skripsi/ Tugas
Akhir : Jakarta : Fakultas Teknik dan Ilmu Komputer : Universitas Indraprasta
Persatuan Guru Republik Indonesia, Agustus, 2023
C. xix + 5 Bab + 82 halaman
D. Kata Kunci : Aplikasi Penerimaan Siswa Baru dengan Metode Rapid
Application Development
E. Proses penerimaan siswa baru adalah tahap awal yang krusial dalam
mengintegrasikan siswa ke dalam lingkungan pendidikan yang baru. Proses ini
masih dilakukan secara manual dan terkadang mengalami kendala seperti
kesalahan input data, lambatnya penanganan berkas, serta kurangnya
keterlibatan pihak terkait dalam proses tersebut. Tujuan penelitian ini adalah
sebagai Meningkatkan efisiensi dan akurasi proses penerimaan siswa baru,
Meningkatkan transparansi dan partisipasi aktif dari pemangku kepentingan &
Menghasilkan aplikasi yang dapat dikembangkan dengan cepat sesuai dengan
perubahan kebutuhan. Metode pengembangan aplikasi yang dipilih juga
memegang peranan penting dalam kesuksesan proyek ini. Salah satu metode
yang dapat digunakan adalah Metode Rapid Application Development (RAD).
Dalam implementasi aplikasi ini, berhasil dirancang dan dikembangkan
antarmuka yang memungkinkan calon siswa dan orang tua untuk melakukan
pendaftaran siswa baru. Proses seleksi siswa juga dapat dilakukan dengan lebih
efisien melalui aplikasi ini. Kesederhanaan desain antarmuka memberikan
pengalaman pengguna yang baik dan memudahkan pengguna dalam mengakses
informasi.
F. Daftar Pustaka : 1. Buku 15 Buah
2. Skripsi 2 Buah
3. Jurnal 2 Buah
G. Pembimbing: 1. Za’imatun Niswati, S.Pt., M.Pd., M.Kom. Pembimbing
Materi
2. Rita Karmila Sari, S.Pd., M.Hum. Pembimbing Teknik

iv
LEMBAR PERSEMBAHAN

“Tidak ada yang sia-sia dalam belajar karena


ilmu akan bermanfaat pada waktunya."

“Skripsi ini kupersembahkan untuk Suamiku Iguh Setiadi yang akan selalu ada
menemaniku sepanjang hidup, Anakku Gavin Kenzie Setiadi Alfarizky yang selalu
aku sayang, Alm.Mbah Poni yang telah membesarkanku dan mendidiku serta &
Ibuku Tusiah yang telah melahirkanku Serta Bapak Alm Totok Huruh Herawanto”

v
KATA PENGANTAR

Puji syukur penulis ucapkan atas ke hadirat Allah SWT yang telah

melimpahkan rahmat taufik serta hidayah-nya. Shalawat serta salam penulis

sanjungkan kepada junjungan kita, Nabi yang pemberi rahmat dan Nabi

penyempurna segala kema’rifan Nabi Muhammad SAW, sehingga akhirnya dapat

menyelesaikan skripsi ini tepat pada waktunya Skripsi yang berjudul

“Perancangan Aplikasi Penerimaan Siswa Baru dengan Metode Rapid

Application Development pada TK MUNNA Berbasis Java” ini ditulis untuk

memenuhi salah satu syarat guna memperoleh gelar sarjana pada Universitas

Indraprasta PGRI. Pada kesempatan yang baik ini, izinkanlah penulis

menyampaikan rasa hormat dan terima kasih kepada semua pihak yang dengan

tulus dan ikhlas memberikan bantuan dan dorongan kepada penulis dalam

menyelesaikan skripsi ini.

1. Ibu Za’imatun Niswati , S.Pt., M.Pd., M.Kom selaku Dosen Pembimbing

Materi Universitas Indraprasta PGRI

2. Ibu Rita Karmila Sari, S.Pd., M.Hum. selaku Dosen Pembimbing Teknik

Universitas Indraprasta PGRI

3. Bapak Muhammad Nur Witama S.K.M., M.Kom. selaku Dosen PA/Wali

4. Bapak Prof. Dr. H. Sumaryoto, selaku Rektor Universitas Indraprasta PGRI

5. Bapak Ir. H. Soepardi Harris, M.T. selaku Dekan Fakultas Teknik dan Ilmu

Komputer, Universitas Indraprasta PGRI

vi
6. Ibu Mei Lestari, M.Kom. selaku Ketua Program Studi Teknik Informatika,

Fakultas Teknik dan Ilmu Komputer, Universitas Indraprasta PGRI

7. Ibu Penulis yang sudah melahirkan dan merawat saya

8. Suami Penulis yang selalu mensupport saya, dan selalu sabar menghadapi saya

9. Teman-temanku seperjuangan Angkatan 2019, khususnya mahasiswa Teknik

Informatika kelas SM yang tidak dapat disebutkan satu per satu

Penulis menyadari bahwa masih terdapat kekurangan dalam penulisan dan

penyusunan skripsi ini. Namun, hal tersebut telah diusahakan semaksimal mungkin

kesempurnaanya sesuai dengan batas kemampuan yang ada. Oleh karena itu,

dengan kerendahan hati penulis mengharapkan kritik dan saran yang membangun

demi perbaikan di masa yang akan datang.

Jakarta, Agustus 2023

Nita Amelia

vii
DAFTAR ISI

LEMBAR PERSETUJUAN UJIAN SKRIPSI / TUGAS AKHIR .................... i


LEMBAR PENGESAHAN .................................................................................. ii
LEMBAR PERNYATAAN ................................................................................. iii
ABSTRAK ............................................................................................................ iv
LEMBAR PERSEMBAHAN ............................................................................... v
KATA PENGANTAR .......................................................................................... vi
DAFTAR ISI ....................................................................................................... viii
DAFTAR GAMBAR ............................................................................................. x
DAFTAR TABEL ............................................................................................... xii
DAFTAR SIMBOL ............................................................................................ xiii
BAB I PENDAHULUAN ................................................................................... 1
A. Latar Belakang Masalah ........................................................................... 1
B. Identifikasi Masalah ................................................................................. 3
C. Batasan Masalah ....................................................................................... 5
D. Rumusan Masalah .................................................................................... 6
E. Tujuan Penelitian ...................................................................................... 7
F. Manfaat Penelitian .................................................................................... 7
G. Sistematika Penulisan ............................................................................... 8
BAB II LANDASAN TEORI DAN PENELITIAN YANG RELEVAN ....... 10
A. Landasan Teori ....................................................................................... 10
B. Penelitian yang Relevan ......................................................................... 33
BAB III METODOLOGI PENELITIAN ........................................................ 37
A. Tempat dan Waktu Penelitian ................................................................ 37
B. Tahapan Penelitian ................................................................................. 38
C. Algoritma................................................................................................ 39
BAB IV HASIL DAN PEMBAHASAN ............................................................ 43
A. Definisi Masalah dan Penyelesaian ....................................................... 43
B. Pembahasan Algoritma ........................................................................... 44
C. Pemodelan Perangkat Lunak .................................................................. 45
D. Kelebihan dan Kelemahan Penelitian ..................................................... 70

viii
BAB V SIMPULAN DAN SARAN ................................................................... 72
A. Simpulan ................................................................................................. 72
B. Saran ....................................................................................................... 72
DAFTAR PUSTAKA
DAFTAR RIWAYAT HIDUP PENULIS
LISTING PROGRAM
LAMPIRAN

ix
DAFTAR GAMBAR

Gambar 2.1 Struktur Data dalam Database ................................................ 23

Gambar 3.1 Tahapan Penelitian .................................................................. 38

Gambar 3.2 Tahap Rapid Application Development (RAD) ....................... 42

Gambar 4.1 Diagram Use Case Penerimaan Siswa Baru ........................... 46

Gambar 4.2 Login Activity .......................................................................... 47

Gambar 4.3 Clear Data Activity (Siswa Baru)............................................ 48

Gambar 4.4 Edit Data Activity (Siswa Baru) .............................................. 49

Gambar 4.5 Hapus Data Activity (Siswa Baru) .......................................... 50

Gambar 4.6 Save Data Activity (Siswa Baru) ............................................. 51

Gambar 4.7 Clear Data Activity (Wali Murid) ........................................... 52

Gambar 4.8 Edit Data Activity (Wali Murid).............................................. 53

Gambar 4.9 Hapus Data Activity (Wali Murid) .......................................... 54

Gambar 4.10 Save Data Activity (Wali Murid)............................................. 55

Gambar 4.11 Save Data Activity (Wali Murid)............................................. 56

Gambar 4.12 Class Diagram Penerimaan Siswa Baru ................................ 57

Gambar 4.13 Squence Diagram Login .......................................................... 57

Gambar 4.14 Squence Diagram Siswa ......................................................... 58

Gambar 4.15 Squence Diagram Wali Murid ................................................ 58

Gambar 4.16 Squence Diagram Seleksi ....................................................... 59

Gambar 4.17 Rancangan Layar Login .......................................................... 59

Gambar 4.18 Rancangan Layar Menu Utama ............................................... 60

Gambar 4.19 Rancangan Layar Siswa .......................................................... 61

x
Gambar 4.20 Rancangan Layar Wali Murid ................................................. 62

Gambar 4.21 Rancangan Layar Seleksi ........................................................ 63

Gambar 4.22 Login ....................................................................................... 63

Gambar 4.23 Halaman Page/Menu Utama………….…….. ........................ 64

Gambar 4.24 Halaman Data Siswa ............................................................... 65

Gambar 4.25 Halaman Wali Murid ............................................................... 65

Gambar 4.26 Halaman Seleksi ...................................................................... 66

Gambar 4.27 Halaman Report Data Siswa Baru ........................................... 67

Gambar 4.28 Halaman Report Wali Murid ................................................... 68

Gambar 4.29 Halaman Report Data Hasil Seleksi ......................................... 69

xi
DAFTAR TABEL

Tabel 3.1 Jadwal Penelitian .................................................................... 37

xii
DAFTAR SIMBOL

A. Use Case Diagram

No Simbol Deskripsi
1. Use Case Fungsionalitas yang disediakan sistem sebagai
unit-unit yang saling bertukar pesan antar unit
atau aktor, biasanya dinyatakan dengan
menggunakan kata kerja diawal frase nama use
case.
2. Aktor Orang, proses, atau sistem lain yang berinteraksi
dengan sistem informasi yang akan dibuat di
luar sistem informasi yang akan dibuat itu
sendiri, jadi walaupun simbol dari aktor adalah
gambar orang, tapi aktor belum tentu
merupakan orang, biasanya dinyatakan
menggunakan kata benda di awal frase nama
aktor.
3. Assosiasi Komunikasi antara aktor dan use case yang
berpartisilpasi pada use case atau use case
memiliki interaksi dengan aktor.
4. Ekstensi Relasi use case tambahan kesebuah use case
dimana use case yang ditambahkan dapat
berdiri sendiri walau tanpa use case tambahan
itu, mirip dengan prinsip inheritance pada
pemrograman berorientasi objek, biasanya use
case tambahan memiliki nama depan yang sama
dengan use case yang ditambahkan, misal

Arah panah mengarah pada use case yang


ditambahkan, biasanya use case yang menjadi
extend-nya merupakan jenis yang sama dengan
use case yang menjadi induknya.

xiii
5. Generalisasi Hubungan generalisasi dan spesialisasi (umum-
khusus) antara dua buah use case dimana fungsi
yang satu adalah fungsi yang lebih umum dari
lainnya, misalnya :

arah panah mengarah pada use case yang


menjadi generalisasinya (umum).
6. Menggunakan Relasi use case tambahan ke sebuah use case
dimana use case yang ditambahkan
memerlukan use case ini untuk menjalankan
fungsinya atau sebagai syarat dijalankan use
case ini Ada dua sudut pandang yang cukup
besar mengenai include di use case .

xiv
B. Activity Diagram

No Simbol Deskripsi
1. Status Awal Status awal aktivitas sistem, sebuah diagram aktivitas

memiliki sebuah status awal.

2. Aktivitas Aktivitas yang dilakukan sistem, aktivitas biasanya

diawali dengan kata kerja.

3. Pecabangan/ decision Asosiasi percabangan dimana jika ada pilihan

aktivitas lebih dari satu.

4. Penggabungan/ Join Asosiasi penggabungan dimana lebih dari satu

aktivitas digabungkan menjadi satu

5. Status Akhir Status akhir yang dilakukan sistem, sebuah diagram

aktivitas memiliki sebuah status akhir.

6. Swimlane Memisahkan organisasi bisnis yang bertanggung

jawab terhadap aktivitas yang terjadi.

Atau

xv
C. Class Diagram

No Simbol Deskripsi
1. Kelas Kelas pada struktur sistem.

2. Antar Muka Sama dengan konsep interface dalam


pemrograman berorientasi objek.

3. Pecabangan/ decision Asosiasi percabangan dimana jika ada pilihan


aktivitas lebih dari satu.

4. Asosiasi Relasi antar kelas dengan makna umum, asosiasi


biasanya juga disertai dengan multiplicity

5. Asosiasi Berarah Relasi antar kelas dengan makna kelas yang satu
digunakan oleh kelas yang lain, asosiasi biasanya
juga disertai dengan multiplicity.
6. Generalisasi Relasi antar kelas dengan makna generalisasi –
spesialisasi (umum - khusus).

7. Kebergantungan Relasi antar kelas dengan makna kebergantungan


antar kelas

8. Agregasi Relasi antar kelas dengan makna semua-bagian


(whole-part).

xvi
BAB I

PENDAHULUAN

A. Latar Belakang Masalah

Perkembangan Di era digital saat ini, perkembangan teknologi

informasi telah membawa dampak signifikan pada berbagai aspek kehidupan,

termasuk dalam dunia pendidikan. Salah satu aspek penting dalam dunia

pendidikan adalah proses penerimaan siswa baru di sekolah atau lembaga

pendidikan. Proses penerimaan siswa baru adalah tahap awal yang krusial

dalam mengintegrasikan siswa ke dalam lingkungan pendidikan yang baru.

Pada Tingkat Kelompok Bermain (TK) MUNNA, proses penerimaan

siswa baru menjadi hal yang memerlukan perhatian khusus. Proses tersebut

melibatkan berbagai tahapan, mulai dari pendaftaran, pengumpulan berkas,

penilaian, hingga pengumuman hasil penerimaan. Namun, seringkali proses ini

masih dilakukan secara manual dan terkadang mengalami kendala seperti

kesalahan input data, lambatnya penanganan berkas, serta kurangnya

keterlibatan pihak terkait dalam proses tersebut.

Untuk mengatasi kendala tersebut, penggunaan teknologi aplikasi

menjadi solusi yang tepat. Dengan merancang dan mengembangkan aplikasi

penerimaan siswa baru, proses tersebut dapat diotomatisasi sehingga menjadi

lebih efisien, akurat, dan transparan. Metode pengembangan aplikasi yang

dipilih juga memegang peranan penting dalam kesuksesan proyek ini. Salah

1
2

satu metode yang dapat digunakan adalah Metode Rapid Application

Development (RAD).

Metode RAD merupakan pendekatan pengembangan perangkat lunak

yang mengutamakan kecepatan dan partisipasi aktif dari pengguna dalam

setiap tahapan pengembangan. Hal ini sesuai dengan kebutuhan TK MUNNA

yang ingin memiliki aplikasi penerimaan siswa baru dalam waktu relatif

singkat, namun tetap memperhatikan kualitas dan fungsionalitasnya. Selain itu,

penggunaan bahasa pemrograman Java juga menjadi pilihan yang tepat karena

kemampuannya dalam mengembangkan aplikasi lintas platform.

Dengan demikian, perancangan aplikasi penerimaan siswa baru dengan

metode RAD pada TK MUNNA berbasis Java menjadi suatu langkah yang

relevan dan strategis. Aplikasi ini diharapkan dapat membantu

mengoptimalkan proses penerimaan siswa baru, meningkatkan efisiensi dan

akurasi, serta memberikan pengalaman yang lebih baik bagi semua pihak yang

terlibat. Dengan adanya aplikasi ini, TK MUNNA dapat menjaga standar

penerimaan siswa baru yang berkualitas dan modern, sejalan dengan

perkembangan teknologi informasi saat ini.

Untuk keperluan tersebut, maka dilakukan penelitian dengan judul

“Perancangan Aplikasi Penerimaan Siswa Baru dengan Metode Rapid

Application Development pada TK MUNNA Berbasis Java”.


3

B. Identifikasi Masalah

Dalam merancang skripsi tentang perancangan aplikasi penerimaan

siswa baru dengan metode Rapid Application Development (RAD) pada TK

MUNNA berbasis Java, beberapa masalah yang mungkin dihadapi dan perlu

diidentifikasi adalah sebagai berikut:

1. Proses Manual yang Lambat dan Rentan Kesalahan

Proses penerimaan siswa baru di TK MUNNA saat ini masih dilakukan

secara manual, termasuk pengumpulan berkas, penilaian, dan pengumuman

hasil penerimaan. Proses manual ini bisa memakan waktu yang lama dan

rentan terhadap kesalahan input data atau proses.

2. Keterbatasan Transparansi

Proses penerimaan siswa baru yang dilakukan secara manual bisa

mengakibatkan kurangnya transparansi, terutama dalam hal penilaian dan

seleksi. Hal ini bisa mengurangi kepercayaan dari calon siswa dan orang tua

dalam proses penerimaan.

3. Komunikasi yang Tidak Efektif

Komunikasi antara pihak sekolah, calon siswa, dan orang tua seringkali

kurang efektif karena terjadi melalui berbagai saluran yang berbeda. Hal ini

bisa mengakibatkan informasi yang kurang jelas atau tertinggal.

4. Kesulitan dalam Pemantauan dan Pelacakan

Tanpa sistem yang terintegrasi, pemantauan dan pelacakan status

penerimaan siswa baru bisa menjadi sulit. Pihak sekolah mungkin kesulitan

dalam memantau tahapan proses penerimaan dari awal hingga akhir.


4

5. Keterbatasan Keterlibatan Pihak Terkait

Dalam proses pengembangan aplikasi, mungkin terjadi kendala dalam

melibatkan pihak-pihak terkait, seperti guru, staf administrasi, calon siswa,

dan orang tua, untuk memberikan masukan dan umpan balik yang

diperlukan.

6. Kesesuaian Metode Pengembangan

Pemilihan metode RAD perlu dijustifikasi dengan baik dalam konteks

pendidikan dan proses penerimaan siswa. Penting untuk memastikan bahwa

metode ini cocok dan dapat menghasilkan aplikasi yang sesuai dengan

kebutuhan TK MUNNA.

7. Keterbatasan Keahlian Teknis

Apabila pihak sekolah tidak memiliki keahlian teknis yang memadai,

pengembangan aplikasi berbasis Java dengan metode RAD bisa

menghadirkan tantangan dalam hal implementasi dan pemeliharaan

aplikasi.

8. Ketersediaan Sumber Daya

Pengembangan aplikasi memerlukan sumber daya seperti waktu, tenaga

kerja, dan anggaran. Penting untuk mempertimbangkan ketersediaan

sumber daya ini agar proyek pengembangan berjalan lancar.

Dalam penelitian skripsi ini, Dapat menggali lebih dalam pada setiap

masalah ini dan menghubungkannya dengan kebutuhan dan tujuan TK

MUNNA serta mengapa perancangan aplikasi dengan metode RAD pada


5

platform Java dapat menjadi solusi yang tepat untuk mengatasi masalah-

masalah ini.

C. Batasan Masalah

Dalam penelitian mengenai perancangan aplikasi penerimaan siswa

baru dengan metode Rapid Application Development (RAD) pada TK MUNNA

berbasis Java, batasan masalah penelitian akan dijelaskan agar dapat

memberikan batasan yang jelas terhadap fokus dan lingkup kerja dari

penelitian ini. Berikut adalah ruang lingkup penelitian yang dapat dijelaskan:

1. Penelitian ini akan difokuskan pada TK MUNNA, lembaga pendidikan

yang berada dalam wilayah yang ditentukan (misalnya, suatu kota atau

daerah tertentu).

2. Penelitian ini akan membahas perancangan aplikasi yang terkait dengan

proses penerimaan siswa baru mulai dari pendaftaran, pengumpulan berkas,

penilaian, hingga pengumuman hasil penerimaan.

3. Penelitian ini akan memfokuskan pada pengembangan aplikasi dengan

menggunakan metode Rapid Application Development (RAD) sebagai

pendekatan utama. Proses pengembangan akan mengikuti prinsip-prinsip

RAD.

4. Aplikasi akan dikembangkan berbasis Java, sehingga platform aplikasi ini

akan menjadi batasan teknis dalam pengembangan.


6

5. Aplikasi akan memiliki fungsionalitas utama terkait penerimaan siswa baru,

termasuk pendaftaran online, pengelolaan berkas pendaftaran, proses

penilaian, pengumuman hasil, dan fitur pemantauan status penerimaan.

6. Penelitian ini tidak akan membahas metode atau pendekatan dalam proses

pendidikan di TK MUNNA, fokus hanya pada pengelolaan penerimaan

siswa baru.

7. Meskipun aplikasi ini dapat diintegrasikan dengan sistem lain, seperti

sistem informasi sekolah, namun ruang lingkup penelitian ini tidak akan

membahas secara mendalam tentang integrasi dengan sistem lain tersebut.

8. Penelitian ini akan membatasi waktu pengembangan aplikasi dan uji coba

fungsionalitas. Tidak akan membahas proses pemeliharaan dan

pengembangan lebih lanjut setelah implementasi.

Dengan membatasi ruang lingkup seperti di atas, penelitian ini akan

dapat lebih fokus dan menghasilkan hasil yang sesuai dengan tujuan dan

manfaat yang telah dirumuskan sebelumnya.

D. Rumusan Masalah

Berdasarkan identifikasi masalah yang ada, maka dapat dirumuskan

permasalahan sebagai berikut:

1. Bagaimana mengoptimalkan proses penerimaan siswa baru di TK

MUNNA agar lebih efisien dan akurat?

2. Bagaimana memastikan transparansi dan partisipasi aktif dari pemangku

kepentingan dalam proses penerimaan siswa baru?


7

3. Bagaimana merancang aplikasi penerimaan siswa baru yang sesuai dengan

kebutuhan TK MUNNA dan dapat dikembangkan dengan cepat?

E. Tujuan Penelitian

Tujuan penelitian yang diharapkan dalam penulisan tugas akhir ini

adalah sebagai berikut:

1. Meningkatkan efisiensi dan akurasi proses penerimaan siswa baru.

2. Meningkatkan transparansi dan partisipasi aktif dari pemangku

kepentingan.

3. Menghasilkan aplikasi yang dapat dikembangkan dengan cepat sesuai

dengan perubahan kebutuhan.

F. Manfaat Penelitian

Hasil dari penelitian ini diharapkan akan dapat memberikan manfaat,

antara lain:

1. Bagi TK MUNNA

Aplikasi penerimaan siswa baru yang efisien, transparan, dan sesuai

dengan kebutuhan.

2. Bagi Pemangku Kepentingan

Kemudahan dalam melakukan proses penerimaan siswa baru dan

keterlibatan aktif dalam pengembangan aplikasi.


8

3. Bagi Penulis

Penulis akan memahami langkah-langkah perancangan aplikasi dari tahap

awal hingga implementasi, meliputi analisis kebutuhan, desain antarmuka,

dan pengujian aplikasi.

G. Sistematika Penulisan

Untuk dapat mempermudah dan memahami tulisan dari tiap-tiap bab

pembahasan dan memberikan arah penulisan itu menjadi jelas, sehingga isi

tulisan ini menjadi satu kesatuan yang terpadu maka secara garis besar materi

laporan tugas akhir ini dibagi dalam beberapa bab yang tersusun sebagai

berikut:

BAB I PENDAHULUAN

Bab ini berisikan latar belakang masalah, identifikasi masalah,

batasan masalah, rumusan masalah, tujuan penelitian, kegunaan

penelitian, sistematika penulisan.

BAB II LANDASAN TEORI DAN PENELITIAN YANG RELEVAN

Berisi tentang kajian-kajian teori yang melandasi pembahasan

dalam tugas akhir. Bab ini meliputi pembahasan tentang pengertian

dasar sistem, pengertian aplikasi, pengertian penjualan, DFD,

ERD, kamus data, normalisasi, perancangan sistem basis data, Java

dan MySQL. Selain itu, bab ini juga membahas tentang penelitian

yang relevan.
9

BAB III METODOLOGI PENELITIAN

Bab ini menjelaskan tentang waktu dan tempat penelitian, tahapan

penelitian, algoritma dalam penyelesaian masalah.

BAB IV HASIL DAN PEMBAHASAN

Bab ini menjelaskan tentang profil, struktur organisasi, proses

bisnis sistem berjalan, aturan bisnis sistem berjalan, dekomposisi

fungsi sistem, analisis masukan, proses dan pengeluaran sistem

berjalan, diagram alir data (DAD) sistem berjalan, analisis

permasalahan, dan alternatif penyelesaian masalah. Dan proses

diusulkan meliputi atusan bisnis sistem, dekomposisi fungsi,

rancangan masukan, proses dan keluaran, kamus data, spesifikasi

proses, bagan terstruktur, spesifikasi modul, rancangan basis data,

rancangan layar, form masukan data, rancangan pengeluaran,

tampilan dan penjelasan layar, format masukan dan tampilan

keluaran.

BAB V SIMPULAN DAN SARAN

Berisi simpulan dari hasil penelitian dan saran mengenai

pengembangan penelitian di masa yang akan datang.


BAB II

LANDASAN TEORI DAN PENELITIAN YANG RELEVAN

A. Landasan Teori

1. Pengertian Perancangan

Menurut (Siregar & Melani, 2018: 113) perancangan didefinisikan

sebagai proses aplikasi berbagai teknik dan prinsip bagi tujuan

pendefinisian suatu perangkat, suatu proses atau sistem dalam detail yang

memadai untuk memungkinkan realisasi fisiknya & untuk mengendalikan

proses desain. Kemudian Suyuti (2018:5) menambahkan definisi,

perancangan adalah suatu proses untuk membuat dan mendesain sistem

yang baru. Sedangkan Setiyanto (2019:91) memberikan tambahan

penjelasan bahwa Perancangan adalah sebuah proses untuk

mendefinisikan sesuatu yang akan dikerjakan dengan menggunakan teknik

yang bervariasi serta didalamnya melibatkan deskripsi mengenai arsitektur

dengan detail komponen dan juga keterbatasan yang akan dialami dalam

proses pengerjaannya.

Dari pendapat tersebut, maka dapat disimpulkan bahwa perancangan

adalah proses yang kompleks dan penting dalam pengembangan produk

atau sistem. Hal ini melibatkan penggunaan berbagai teknik dan prinsip

untuk merinci dan mendefinisikan detail yang akan memungkinkan

realisasi fisik dari konsep yang ada.

10
11

2. Pengertian Aplikasi

Menurut Hengky W (2012:17). Pramana, Aplikasi merupakan

suatu unit perangkat lunak yang dibuat untuk melayani kebutuhan akan

beberapa aktivitas seperti sistem perniagaan, game palayanan masyarakat,

periklanan, atau semua proses yang hampir dilakukan manusia. Kemudian

Munari (2020:77) menjelaskan Aplikasi merupakan suatu subkelas

perangkat lunak komputer yang memanfaatkan kemampuan komputer

langsung untuk melakukan suatu tugas yang diinginkan pengguna.

Aplikasi dibuat untuk memudahkan pekerjaan atau tugas-tugas tertentu

seperti penerapan, penggunaan, dan penambahan data yang dibutuhkan.

Dari beberapa tersebut, maka dapat disimpulkan bahwa aplikasi

adalah program komputer yang dirancang untuk menjalankan fungsi-

fungsi atau tugas-tugas khusus yang sesuai dengan kebutuhan dan tujuan

pengguna. Aplikasi dapat membantu memecahkan masalah atau

memudahkan pengguna dalam melakukan aktivitas tertentu dengan

memanfaatkan fitur-fitur yang disediakan oleh perangkat lunak tersebut.

3. Pengertian Penerimaan Siswa Baru

Menurut Effendi (2016:106), Penerimaan siswa baru adalah proses

penerimaan calon siswa yang baru akan memasuki jenjang pendidikan

tertentu, di mana calon siswa tersebut melalui tahapan seleksi dan

administrasi yang telah ditentukan oleh lembaga pendidikan. Sedangkan

Menurut Rohiat (2012:208) penerimaan siswa baru adalah proses

pelayanan dan pencatatan siswa dalam penerimaan siswa baru, setelah


12

melalui seleksi masuk siswa baru tersebut dengan persyaratan-persyaratan

yang telah ditentukan dan terdapat beberapa kegiatan yang dilakukan

seperti penetapan daya tampung, penetapan persyaratan siswa yang akan

diterima, dan pembentukan panitia penerimaan siswa baru.

Dari pengertian diatas dapat disimpulkan bahwa penerimaan siswa

baru adalah proses yang melibatkan tahapan seleksi, pendaftaran,

verifikasi, dan penilaian calon siswa baru oleh lembaga pendidikan.

Tujuan dari proses ini adalah untuk memilih calon siswa yang sesuai

dengan kriteria, standar, dan tujuan pendidikan yang ditetapkan oleh

lembaga tersebut. Proses penerimaan siswa baru juga harus berlangsung

secara transparan, adil, akuntabel, dan bebas dari praktik-praktik yang

merugikan peserta didik dan masyarakat.

4. Pengertian TK (Taman Kanak-kanak)

Menurut Undang-Undang Republik Indonesia Nomor 20 Tahun

2003 tentang Sistem Pendidikan Nasional, Taman Kanak-Kanak adalah

lembaga pendidikan anak usia dini yang menyelenggarakan pendidikan

bagi anak sejak lahir sampai dengan usia enam tahun yang bertujuan untuk

memberikan rangsangan pendidikan bagi anak agar berkembang optimal

untuk mencapai kematangan jasmani dan rohani, serta persiapan dalam

memasuki pendidikan lebih lanjut.

Taman Kanak-kanak. Berdasarkan pada Penjelasan Undang-

Undang RI Nomor 20 Tahun 2003 tentang Sistem Pendidikan Nasional,

Pasal 28 Ayat (3) menyebutkan bahwa Taman Kanak-kanak adalah suatu


13

bentuk pendidikan yang diselenggarakan untuk mengembangkan

kepribadian dan potensi diri sesuai dengan tahap perkembangan peserta

didik.

Dari pengertian-pengertian tersebut, dapat disimpulkan bahwa TK

(Taman Kanak-Kanak) adalah lembaga pendidikan formal yang

menyelenggarakan pendidikan bagi anak usia dini, yaitu dari lahir hingga

usia enam tahun. Tujuannya adalah untuk membantu anak mencapai

perkembangan fisik, kognitif, sosial, emosional, dan moral secara optimal,

sehingga anak siap memasuki pendidikan lebih lanjut.

5. Data Flow Diagram (DFD)

Menurut Saputra (2015:11), Data Flow Diagram merupakan suatu

diagram yang menggambarkan alir data dalam suatu entitas ke sistem atau

ke entitas. Data Flow Diagram juga dapat diartikan sebagai teknik grafis

yang menggambarkan alir data dan transformasi yang digunakan sebagai

perjalanan data dari input atau masukan menuju keluaran atau output. DFD

tidak sesuai untuk memodelkan sistem yang menggunakan pemograman

berorientasi objek”. Data Flow Diagram merupakan peralatan yang

berfungsi untuk menggambarkan secara rinci mengenai sistem berbagai

jaringan kerja antar fungsi yang berhubungan satu sama lain dengan

menunjukkan dari dan ke mana data mengalir serta penyimpanannya. Data

Flow Diagram digunakan untuk menggambarkan suatu sistem yang ada dan

dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik

dimana data tersebut mengalir atau lingkungan fisik dimana data tersebut
14

akan tersimpan. DFD merupakan salah satu alat yang digunakan di dalam

pengembangan sistem secara terstruktur. Beberapa simbol yang digunakan

dalam DFD yaitu:

a. Entity atau Terminator

Simbol yang terbentuk bujur sangkar yang merupakan kesatuan (entity)

dilingkungan luar sistem yang dapat berupa orang, organisasi atau sistem

lainnya yang berada di lingkungan luarnya yang akan memberikan input

atau memerima output dari sistem.

b. Proses

Simbol yang berbentuk lingkungan menggambarkan bagian dan sistem

yang mentransformasikan input ke output atau lebih dari satu input

menjadi output. Proses ini diberi nama untuk menerangkan proses atau

kegiatan apa yang sedang atau akan dilaksanakan dengan menggunakan

kata kerja transitif.

c. Arus Data (Data Flow)

Simbol yang berbentuk arah panah yang digunakan untuk menerangkan

perpindahan data atau satu paket data antara proses, simpanan data yang

kesatuan luarnya. Pemberian nama pada arus data dilakukan dengan kata

benda.

d. Simpan Data (Data Store)

Simbol yang berbentuk persegi panjang tidak sempurna merupakan

simpanan data yang digunakan untuk membuat model sekumpulan paket


15

data. Nama yang diberikan pada data store biasanya menggunakan kata

benda jamak.

6. Entity Relationship Diagram (ERD)

Menurut Aditama (2017:41), Entity Relationship Diagram (ERD)

merupakan hubungan antara entitas dalam basis data berdasarkan objek-

objek yang mempunyai hubungan antar relasi, sehingga dari perancangan

Entity Relationship Diagram tersebut dapat diketahui elemen-elemen apa

saja yang akan menjadi sebuah entitas, yang berguna sebagai fondasi bagi

proses secara teknis selanjutnya. Berikut ini adalah simbol Entity

Relationship Diagram.

Entity Relationship Diagram (ERD) merupakan suatu model untuk

menjelaskan hubungan antar data dalam basis data berdasarkan objek-

objek dasar data yang mempunyai hubungan antar relasi. Menurut Yanto

(2016:32) “ERD adalah suatu diagram untuk menggambarkan desain

konseptual dari model konseptual suatu basis data relasional. ERD juga

merupakan gambaran yang merelasikan antara objek yang satu dengan

objek yang lain dari objek di dunia nyata yang sering dikenal dengan

hubungan antar entitas”. Berikut adalah komponen-komponen pada ERD

sebagai berikut:

a. Entity sets

Entity sets yaitu kumpulan entitas yang bertipe sama. Contoh kumpulan

entitas murid, kumpulan entitas pedagang”. Jika ada entity sets dari

entitas yang sama maka tidak perlu diuraikan. Misalnya jika ada
16

entitas set murid, dan entitas set pedagang. Entitas manusia mungkin

dapat masuk kedalam keduanya atau juga tidak bisa masuk dikeduanya.

b. Relationship

Relationship yaitu suatu hubungan yang terjadi antara beberapa entity

yang mana dapat memiliki atribut, terjadi adanya transaksi yang

mendapatkan suatu nilai tertentu.

1) One to one (1:1)

Artinya suatu entitas hanya berhubungan dengan satu entitas

lainnya.

2) One to many (1:M)

Artinya suatu entitas yang dapat dihubungkan dengan beberapa

entitas lainnya.

3) Many to one (M:1)

Artinya beberapa data memiliki beberapa data pasangan.

4) Many to many (M:M)

Artinya entitas yang dapat saling berhubungan banyak tanpa batasan

apapun.

c. Atribut

Atribut yaitu setiap entitas pasti mempunyai elemen yang disebut atribut

yang berfungsi untuk mendeskripsikan karakteristik dari entitas tersebut.

Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi

elemen satu dengan yang lain. Gambar atribut diwakili oleh simbol elips.
17

7. Kamus Data

Menurut Supardi (2015:6), mengemukakan bahwa kamus data

merupakan model yang tidak menggunakan notasi grafis sebagaimana

halnya DFD. Kamus data mendefinisikan elemen. Kamus Data membantu

pelaku sistem untuk mengartikan aplikasi secara detail dan

mengorganisasikan semua elemen data yang digunakan dalam sistem.

Kamus Data dibuat pada tahap analisis sistem dan digunakan baik pada

tahap analisis maupun pada tahap perancangan sistem. Pada tahap analisis

kamus data dapat digunakan sebagai alat komunikasi antara analisis sistem,

dan ketika pada tahap perancangan sistem, kamus data digunakan untuk

merancang input, laporan-laporan dan database.

a. Nama Arus Data

Nama arus data juga dicatat di kamus data, jika dalam pembaca diagram

alir data memerlukan penjelasan tentang suatu arus data tertentu maka

kita dapat mencarinya dari kamus data.

b. Alias

Alias atau nama lain dari data yang harus dituliskan. Alias perlu ditulis

karena data yang sama mempunyai nama yang berbeda antara satu

dengan yang lainnya

c. Tipe Data

Tipe arus data dapat mengalir dari hasil suatu proses ke proses lainnya.

Data yang mengalir biasanya dalam bentuk laporan serta dokumen hasil

cetakan komputer dan bentuk dari data yang mengalir dapat berupa
18

dokumen dasar atau formulir, dokumen cetakan komputer, tampilan

layar monitor, variabel parameter dan field-field.

d. Arus Data

Arus data menunjukkan dari mana data mengalir dan kemana data akan

menuju. Keterangan arus data perlu dicatat dikamus data agar

memudahkan mencari arus data dalam diagram alir data.

e. Penjelasan

Untuk menjelaskan makna dari arus data yang dicatat di kamus data.

Bagian penjelasan ini dapat diisi dengan keterangan mengenai arus data

tersebut.

f. Periode

Periode menunjukan kapan terjadinya arus data dan dapat digunakan

untuk mengidentifikasikan kapan data harus dimasukan ke dalam sistem,

kapan proses program harus dilakukan dan kapan laporan harus

dihasilkan.

g. Volume

Volume yang perlu dicatat adalah volume rata-rata dan volume puncak

dari arus data. Volume rata-rata menunjukkan banyaknya arus data yang

mengalir dalam satu periode tertentu. Sedangkan volume puncak

menunjukkan volume yang terbanyak.

h. Struktur Data

Struktur data menunjukkan arus data yang dicatat pada kamus data yang

terdiri dari elemen-elemen data.


19

8. Normalisasi

Menurut Yanto (2016:55) mengemukakan bahwa, Normalisasi

merupakan tahapan pengelompokan komponen data yang menjadi tabel-

tabel yang menunjukan entitas suatu relasi. Bila masih ada kesulitan, maka

tabel harus dipecah kembali sampai diperoleh hasil yang optimal. Beberapa

teknik yang dapat dilakukan ialah sebagai berikut:

a. Teknik Normalisasi

Ada beberapa kunci relasi dalam teknik normalisasi antara lain:

1. Kunci Calon (Candidate key)

Kunci calon adalah kunci yang mendefinisikan secara unik suatu

kejadian dari entitas.

2. Kunci Primer (Primary key)

Kunci primer adalah kunci yang tidak hanya mendefinisikan secara

unik suatu kejadian tatapi juga dapat mewakili setiap kejadian dari

entitas. Setiap kunci kandidat punya peluang menjadi kunci primer,

tetapi dipilih satu saja yang dapat mewakili secara menyeluruh

terhadap entitas yang ada.

3. Kunci Alternatif

Kunci alternatif adalah kunci kandidat yang tidak dipakai sebagai

kunci primer. Biasanya kunci alternatif dipakai sebagai kunci dalam

pengurutan data.
20

4. Kunci tamu (foreign key)

Kunci tamu adalah kunci yang melengkapi suatu relasi atau

hubungan yang menunjukan ke induknya. Kunci tamu ditetapkan

pada entitas anak yang direlasikan ke kunci primer pada induknya.

Hubungan antar kunci tamu dengan kunci primer adalah hubungan

satu lawan banyak.

b. Bentuk-bentuk Normalisasi

Aturan normalisasi dinyatakan dalam istilah bentuk normal.

Bentuk normal adalah suatu aturan yang dikenakan pada entity dalam

database dan harus dipenuhi oleh entity tersebut sehingga tercapai

normalisasi. Suatu entity dikatakan dalam bentuk normal apabila entity

tersebut memenuhi aturan pada bentuk normal (Handayani, 2018:60).

Berikut tingkatan bentuk normal dalam proses normalisasi:

1. Bentuk tidak normal (Unnormalized Form)

Bentuk tidak normal merupakan kumpulan data yang akan direkam

dan tidak ada keharusan mengikuti suatu form tertentu. Data

dikumpulkan apa adanya sesuai kedatangannya.

2. Bentuk normal pertama (1 NF)

Bentuk normal pertama dilakukan penghilangan beberapa atribut

elemen yang berulang agar menjadi satu harga tunggal yang

berinteraksi diantara setiap baris pada suatu tabel.


21

3. Bentuk normal kedua (2 NF)

Bentuk normal kedua didasari atas konsep ketergantungan

fungsional sepenuhnya.

4. Bentuk normal ketiga (3 NF)

Bentuk normal ketiga hanya menghilangkan anomali-anomali hasil

dari ketergantungan fungsional.

5. Boyce/ Code Normal Formal (BCNF)

Sebuah data store dalam BCNF adalah jika setiap determinan adalah

calon key atau kunci. Sedangkan sebuah determinan adalah

beberapa atribut yang saling terkait atau tergantung penuh secara

fungsional antara satu atribut dengan atribut lainnya.

c. Model Relasi

Bentuk relasi antar file dikatagorikan menjadi 3 macam:

1. Hubungan satu persatu (one to one relationship)

Hubungan satu terhadap satu mempunyai ciri-ciri:

a) Hubungan antara file pertama dengan file kedua adalah satu

banding satu.

b) Tanda lingkaran untuk menunjukan file dan relasi antara file

digambarkan dengan tanda panah tunggal.

c) Hubungan satu terhadap banyak (one to many relationship).

d) Hubungan antara file pertama dengan file kedua adalah satu

banding banyak, atau dapat dibalik.


22

e) Tanda lingkaran untuk menunjukan file dan relasi antara file

digambarkan dengan tanda panah ganda.

f) Hubungan banyak terhadap banyak (many to many

relationship).

g) Hubungan antara file pertama dengan file kedua adalah banyak

banding banyak.

h) Tanda lingkaran untuk menunjukan file dan relasi antara file

digambarkan dengan tanda panah ganda.

9. Database

Abdulloh (2018:103) memberikan penjelasan Database atau basis

data adalah kumpulan informasi yang disimpan dalam komputer secara

sistematik sehingga dapat diperiksa menggunakan suatu program komputer

untuk memperoleh informasi. Sedangkan Kurniawan dan Marhamelda

(2019:13) mengungkapkan pengertian Database sebagai berikut: “Database

atau sering juga disebut basis data adalah sekumpulan informasi yang

disimpan dalam komputer secara sistematik dan merupakan sumber

informasi yang dapat diperiksa menggunakan suatu program komputer”.

Beberapa mendefinisikan database lebih profesional, bukan hanya

kumpulan data. Ini digambarkan sebagai alat terorganisir yang mampu

menyimpan data atau informasi yang dapat diambil dengan cara yang efektif

dan efisien ketika diperlukan.

Basis data tidak hanya berisi data yang Anda butuhkan, tetapi juga

apa yang Anda sebut metadata-nya. Ini adalah informasi yang


23

mendefinisikan atau menggambarkan struktur data dalam database yang

diberikan (itulah sebabnya ia didefinisikan sebelumnya sebagai entitas yang

menggambarkan diri sendiri), disimpan di wilayah yang disebut kamus data.

Dengan demikian, pengambilan data akan lebih cepat jika Anda tahu

bagaimana informasi diatur dan disimpan. Selain itu, ada hubungan di antara

item data karena mereka terintegrasi satu sama lain. Periksa gambar berikut

untuk ilustrasi sampel tentang apa itu database (Alvaro, 2019).

Gambar 2.1 Struktur Data dalam Database


Sumber: (Alvaro, 2019)

Basis data dapat didefinisikan dalam berbagai sudut pandang seperti

berikut:

1. Himpunan kelompok data yang saling berhubungan yang diorganisasi

sedemikian rupa sehingga kelak dapat dimanfaatkan dengan cepat dan

mudah.

2. Kumpulan data yang saling berhubungan yang disimpan secara bersama

sedemikian rupa tanpa pengulangan (redundancy) yang tidak perlu, untuk

memenuhi kebutuhan.

3. Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam

media penyimpanan elektronik.


24

Data dalam sebuah database disusun berdasarkan sistem hirarki yang

unik yaitu:

a. Database, merupakan kumpulan file yang terkait satu sama yang lainnya.

Kumpulan file yang tidak terkait satu sama yang lainnya tidak disebut

database.

b. File, yaitu kumpulan dari record yang terkait dan memiliki format field

yang sama dan sejenis.

c. Record, yaitu kumpulan field yang menggambarkan suatu unit data

individu tertentu.

d. Field, yaitu atribut dari record yang menunjukan suatu item dari data

seperti nama, alamat, dan lain sebagainya.

e. Byte, yaitu atribut dari field yang berupa huruf yang membentuk nilai dari

sebuah field. Huruf tersebut dapat berupa numerik maupun abjad atau

karakter khusus.

f. Bit, yaitu bagian terkecil dari data secara keseluruhan yaitu karakter ACII

nol atau satu yang merupakan komponen pembentuk byte.

Adapun proses perancangan basis data, dibagi menjadi 3 tahapan

sebagai berikut:

a. Perancangan Basis Data Konseptual

Merupakan upaya untuk membuat model yang masih bersifat konsep.

Perancangan basis data secara konseptual terdiri dari tiga langkah yaitu:

1) Penentuan entitas pada basis data.

2) Pendefinisian hubungan antar entitas.


25

3) Penerjemahan hubungan ke dalam entitas.

b. Perancangan Basis Data Secara Logis

Merupakan tahapan untuk memetakan model konseptual ke model basis

data yang akan dipakai. Namun sebagaimana halnya perancangan basis

data secara konseptual, perancangan ini tidak bergantung pada Database

Management System (DBMS) yang akan dipakai.

c. Perancangan Basis Data Secara Fisik

Merupakan tahapan untuk menuangkan perancangan basis data yang

bersifat logis menjadi data fisik yang tersimpan pada media

penyimpanan eksternal (yang spesifik terhadap DBMS yang yang

dipakai).

10. Pengertian Database Management System (DBMS)

Menurut Vandenberg (2016:23) mengemukakan bahwa DBMS

adalah sebuah sistem perangkat lunak yang mengizinkan pengguna untuk

mendefinisikan, membuat, memelihara, dan mengontrol akses ke dalam

basis data.

Database Management System (DBMS) memiliki komponen yang

terdiri dari:

1. Perangkat Keras

Perangkat keras merupakan perangkat yang berupa komponen dan

bagian-bagian di dalamnya, seperti harddisk, processor, dan memori.

Komponen inilah yang melakukan pemrosesan dan juga melakaukan

penyimpanan basis data.


26

2. Data

Data di dalam basis data memiliki sifat terpadu dan berbagi. Terpadu

berarti berkas-berkas data di dalam basis data saling terkait. Sedangkan

berbagi berarti bahwa data dapat dipakai oleh sejumlah pengguna secara

bersamaan.

3. Perangkat Lunak

Perangkat lunak dalam hal ini Database Management System (DBMS),

berkedudukan antara basis (data yang disimpan dalam harddisk) data

dengan pengguna.

4. Pengguna

Pengguna dapat diklasifikasikan menjadi tiga kategori yaitu pengguna

akhir, pengguna aplikasi dan administrator basis data.

11. Atribut Data

Dwiyantoro (2019:35) menjelaskan bahwa fungsi utama DBMS

adalah untuk menyediakan lingkungan yang nyaman dan efisien untuk

digunakan dalam pengambilan dan penyimpanan informasi dibasis data.

Abstraksi data dalam DBMS dibagi menjadi tiga lapis yaitu:

a. Lapis fisik merupakan lapis terendah dalam abstraksi data. Lapis ini

menjelaskan bagaimana data sesungguhnya disimpan. Pada lapis ini

struktur data dijabarkan secara rinci.

b. Lapis konseptual bersifat lebih tinggi daripada lapis fisik. Lapis ini

menjabarkan data apa saja yang sebenarnya disimpan pada basis data,

dan menjabarkan hubungan-hubungan antar data.


27

c. Lapis pandang merupakan lapis tertinggi pada abstraksi data. Pada lapis

ini pengguna hanya mengenal struktur data yang sederhana, yang

berorientasi pada kebutuhan pengguna. Data yang dikenal oleh masing-

masing pengguna bisa berbeda-beda dan barangkali hanya mencakup

sebagian dari basis data.

12. Model Basis Data

Yunita dan Safitri (2019: 65) menjelaskan bahwa yang dimaksud

dengan model data adalah sekumpulan tools konseptual untuk

mendeskripsikan data, relasi-relasi antar data, semantik data, dan

konsistensi konstrain. Bermacam-macam model data terbagi dalam dua

kelompok besar, yaitu:

a. Object-based logical models.

Yang termasuk dalam kelompok ini diantaranya:

1. Entity Relationship Model.

E-R model persepsi atas dunia nyata yang terdiri dari sekumpulan

objek, disebut entitas dan hubungan antar objek tersebut, disebut

relasi. Entitas adalah objek di dunia yang bersifar unik. Setiap entitas

memiliki atribut yang membedakannya dengan entitas lainnya.

Pemodelan data dengan model E-R terdiri dari:

a) Kotak persegi panjang, menggambarkan himpunan entitas.

b) Elips, menggambarkan atribut-atribut entitas.

c) Diamond, menggambarkan hubungan antara himpunan entitas.

d) Garis, yang menghubungkan antar objek dalam diagram E-R.


28

2. Object Oriented Model.

Model berorientasi objek berbasiskan kumpulan objek. Setiap

objek berisi:

a) Nilai yang disimpan dalan variable instan, dimana variable

melekat dengan objek itu sendiri.

b) Metode, operasi yang berlaku pada objek yang bersangkutan.

c) Objek-objek yang memiliki tipe dan metode yang dikelompokan

dalam satu kelas. Kelas disini mirip dengan abstrak pada bahasa

pemrograman.

d) Sending a message, sebuah objek dapat mengakses sebuah data

yang lain hanya dapat memanggil metode dari objek tersebut.

13. Bahasa Pemrograman Java

Menurut Subhan (2020:5) Java merupakan pemrograman yang

bersifat lintas platform. Artinya, bahasa ini dapat dipakai untuk menyusun

program pada berbagai sistem operasi (Linux, Windows, UNIX). Sedangkan

menurut Arizona (2019:12) mengemukakan bahwa Java adalah sebuah

bahasa pemograman yang berorientasi objek yang bisa digunakan

diberbagai platform”. Lalu menurut Firly (2018:3) menjelaskan bahwa Java

adalah bahasa pemrograman multi platform. Java tidak menyediakan IDE

khusus seperti halnya bahasa pemrograman yang lain. Pemrogram bisa

menggunakan IDE yang support ke java, misalnya Netbeans, Eclips,

TexPad, dan lain-lain. elemen-elemen dasar pemrograman java terdiri dari

himpunan karakter, pengenal (identifier), kata kunci, tipe data primitif. Tipe
29

data primitif yang didukung oleh bahasa pemrograman Java adalah byte,

short, int, long, float, double, Boolean, char.

Dari ketiga pendapat di atas dapat di simpulkan bahwa bahasa

pemograman java adalah perkembangan dari bahasa pemrograman C++

yang dimana bahasa pemograman java jauh lebih dapat diandalkan

sehinggan java bisa membuat seluruh bentuk pemograman dari aplikasi

desktop hingga ke aplikasi mobile, sehingga java sangat cocok digunakan

sebagai bahasa pemograman untuk kalangan programmer yang

menggunakannya.

14. Netbeans Integrated Development Environment (IDE) 8.0.2

Menurut Heffelfinger (2020:18), “NetBeans adalah platform dan

platform Integrated Development Environment (IDE)”. Meskipun pada

awalnya, NetBeans IDE hanya dapat digunakan untuk mengembangkan

aplikasi Java, pada versi 6, NetBeans mendukung beberapa bahasa

pemrograman, baik melalui dukungan bawaan, atau dengan menginstal

plugin tambahan. Bahasa pemrograman yang secara asli didukung oleh

NetBeans termasuk Java, C, C ++, PHP, HTML, dan JavaScript. Groovy,

Scala, dan lainnya didukung melalui plugin tambahan.

Selain menjadi IDE NetBeans juga merupakan platform.

Pengembang dapat menggunakan API NetBeans untuk membuat plugin

NetBeans dan aplikasi mandiri.

NetBeans IDE mendukung beberapa bahasa pemrograman, karena

akarnya sebagai Java only IDE, ini lebih banyak digunakan dan dikenal
30

dalam komunitas Java. Sebagai IDE Java, NetBeans memiliki dukungan

bawaan untuk aplikasi Java SE (Edisi Standar), yang biasanya berjalan di

desktop pengguna atau komputer notebook; Aplikasi Java ME (Micro

Edition), yang biasanya dijalankan pada perangkat kecil seperti ponsel atau

PDA; dan untuk aplikasi Java EE (Enterprise Edition), yang biasanya

berjalan di server "big iron" dan dapat mendukung ribuan pengguna secara

bersamaan”.

Netbeans merupakan sebuah proyek kode terbuka yang sukses

dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan

memiliki hampir 100 mitra. Sun Microsystems mendirikan proyek kode

terbuka NetBeans pada bulan Juni 2000 dan terus menjadi sponsor utama.

Dan saat ini pun netbeans memiliki 2 produk yaitu Platform Netbeans dan

Netbeans IDE. Platform Netbeans merupakan framework yang dapat

digunakan kembali (reusable) untuk menyederhanakan pengembangan

aplikasi desktop dan Platform NetBeans juga menawarkan layanan-layanan

yang umum bagi aplikasi dekstop, mengijinkan pengembang untuk fokus

ke logika yang spesifik terhadap aplikasi”. Heffelfinger (2020:20) Fitur-

fitur yang terdapat dalam netbeans antara lain:

a. Smart Code Completion

Untuk mengusulkan nama variabel dari suatu tipe, melengkapi keyword

dan mengusulkan tipe parameter dari sebuah method.


31

b. Bookmarking

Fitur yang digunakan untuk menandai baris yang suatu saat hendak

dimodifikasi.

c. Go to commands

Fitur yang digunakan untuk jump ke deklarasi variabel, source code atau

file yang ada pada project yang sama.

d. Code generator

Jika kita menggunakan fitur ini kita dapat meng-generate constructor,

setter and getter method dan yang lainnya.

e. Error stripe

Fitur yang akan menandai baris yang error dengan memberi highlight

merah.

15. My Structured Query Language (MySQL)

Menurut Alvaro (2019:2) mengemukakan bahwa MySQL merupakan

software database open source yang paling populer di dunia, dimana saat

ini digunakan lebih dari 100 juta pengguna di seluruh dunia. Dengan

kehandalan, kecepatan dan kemudahan penggunaannya, MySQL menjadi

pilihan utama bagi banyak pengembang software dan aplikasi baik di

platform web maupun desktop. Pengguna MySQL tidak hanya sebatas

pengguna perseorangan maupun perusahaan kecil, namun perusahaan

seperti Yahoo!, Alcatel‐Lucent, Google, Nokia, Youtube, Wordpress dan

Facebook juga merupakan pengguna MySQL.


32

Menurut Webber (2018:32), “SQL adalah bahasa pemrograman yang

merupakan kependekan dari 'Structured Query Language' dan ini adalah

bahasa yang sederhana untuk dipelajari mengingat itu akan memungkinkan

interaksi terjadi antara database yang berbeda yang berada di sistem yang

sama. Sistem basis data ini pertama kali muncul pada tahun 70-an, tetapi

ketika IBM keluar dengan prototipe sendiri dari bahasa pemrograman ini,

maka ia benar-benar mulai melihat pertumbuhan dalam popularitas dan

dunia bisnis mulai memperhatikan”.

Menurut Anhar (2016:7) “SQL adalah bahasa komputer yang

fleksibel yang dapat Anda gunakan dengan berbagai cara untuk

berkomunikasi dengan basis data relasional. Perangkat lunak ini memiliki

beberapa fitur berbeda yang membedakannya dari aplikasi pemrograman

lain. Pertama dan terutama, SQL adalah bahasa non-prosedural. Sebagian

besar program komputer (mis., C, C ++ dan Java) memecahkan masalah

dengan mengikuti urutan perintah yang disebut prosedur. Dalam hal ini,

satu operasi tertentu dilakukan setelah yang lain sampai tugas yang

diperlukan telah selesai. Alur operasi dapat berupa urutan linier atau

looping, tergantung pada apa yang telah ditentukan programmer. Ini tidak

sama untuk SQL. Dalam menggunakan aplikasi ini, Anda hanya perlu

menentukan output yang Anda inginkan, bukan bagaimana Anda ingin

menghasilkan output. Dari CUSTOMER TABLE, jika Anda ingin membuat

daftar kontak terpisah yang perusahaannya berlokasi di Texas, maka Anda

harus mengambil baris tempat kolom STATE berisi "TX" sebagai nilainya.
33

Dalam menulis perintah SQL, Anda tidak perlu menunjukkan bagaimana

informasi harus diambil. Ini adalah peran utama dari sistem manajemen

basis data untuk memeriksa basis data dan memutuskan bagaimana

menghasilkan hasil yang Anda inginkan”.

B. Penelitian yang Relevan

Hasil penelitian terdahulu dapat dipakai sebagai acuan untuk melakukan

penelitian selanjutnya. Meskipun ada perbedaan pada objek atau variabel yang

diteliti. Penelitian tersebut dapat dijadikan sebagai gambaran bagi peneliti

berikutnya untuk melakukan penelitian.

1. Skripsi

a. Judul : Rancang Bangun Aplikasi Penerimaan Siswa

Baru Berbasis Web Pada SD Katolik

Marsudisiwi Malang

Peneliti : Bagas Bayu Sembada

NPM : 14410100149

Tahun : 2019

Fakultas : Teknik Informatika, Institus Bisnis dan

Informatika STIKOM Surabaya

Simpulan : Melakukan penelitian terhadap aplikasi

Penerimaan siswa baru mencakup data

penerimaan siswa baru dan data laporan siswa

baru, yang bertujuan untuk mempermudah


34

Tatusaha penerimaan siswa baru dalam

melakukan pendaftaran dan memberikan laporan

tentang data siswa baru yang diperluka. Dalam

tugas akhirnya beliau menggunakan bahasa

pemrograman Java.

b. Judul : Sistem Informasi Penerimaan Siswa Baru

Berbasis Web dengan PHP dan MySQL

Peneliti : Irwin Nugroho

NPM : 07520244075

Tahun : 2011

Fakultas : Teknik

Universitas : Universitas Negeri Yogyakarta

Simpulan : Penelitian penerimaan siswa baru ini Berbasis

web dengan tujuan agar mampu mengelola

pelaksanaan Penerimaan Siswa Baru yaitu

pendaftaran, seleksi, penjurnalan, pengumuman,

dan pendaftaran ulang.

2. Jurnal

a. Judul : Perancangan Sistem Informasi Pendaftaran

Murid Baru pada PAUD Kangguru Kecil

Berbasis WEB

Nama Jurnal : Jurnal Ilmiah MATRIX

Volume : Vol 24 No. 2


35

Peneliti : Hanif Rabbani Zubair dan Iin Ernawati

Tahun : 2022

Universitas : Universitas Pembangunan Nasional Veteran

Jakarta

Simpulan : Penelitian Ini diakukan di PAUD Kangguru

Kecil . menggunakan metode waterfall dengan

mengumpulkan data dan melakukan

wawancara untuk membantu proses

perancangan sistem, kemudian menganalisis

kebutuhan sistem menggunakan metode

PIECES. Desain perancangan sistem

menggunakan pemodelan UML. Kemudian di

akhiri dengan melakukan uji coba sistem

dengan menerapkan metode black box Tujuan

penelitan ini membantu sekolah dalam

memberikan informasi kepada orang tua

calon murid tentang PAUD Kangguru Kecil

sehingga tidak perlu menyediakan

brosur/flyer untuk memberikan informasi.

b. Judul : Sistem Penerimaan Peserta Didik Baru

Berbasis Java pada SDN Gandara Selatan

Nama Jurnal : Jurnal Teknik Komputer

Volume : Vol. 4 No. 1


36

Peneliti : Boni Pasius Dolok Saribu, Thomas Afrizal,

dan Tria Hadi Kusmanto

Tahun : 2022

Universitas : Universitas Indraprasta PGRI

Simpulan : Penelitian dilakukan pada SDN Gandaria

Selatan 03 Pagi. Penelitian membuat

penelitian bertujuan untuk membuat sistem

penerimaan siswa baru berbasis website pada

SDN Gandaria Selatan 03 Pagi dengan adanya

sistem baru yang sudah terkomputerisasi atau

website diharapkan laporan penerimaan siswa

baru berjalan lebih efektif dan efisien.

c. Judul : Rancangan Aplikasi Pendataan Penerimaan

Siswa Baru SMP NURUL IHSAN Jakarta

Berbasis Android

Nama Jurnal : Seminar Nasional Riset dan Inovasi Teknologi

(SEMNAS RISTEK) 2021

Volume : -

Peneliti : Muhammad Iqbal

Tahun : 2021

Universitas : Universitas Indraprasta PGRI

Simpulan : Sistem PPDB di SMP Nurul Ihsan Jakarta

yang masih menggunakan sistem informasi


37

manual atau melalui brosur-brosur dan melalui

mulut - kemulut antar personal sehingga

informasi mengenai PPDB tidak dapat diakses

banyak orang serta pengelolaan data

khususnya pada penerimaan siswa baru belum

terkomputerisasi dan belum berjalan secara

online dimana dalam proses data dan

pembuatan laporan- laporan yang berkaitan

dengan penerimaan siswa baru masih

menggunakan microsoft word dan

menggunakan arsip kertas untuk menyimpan

data siswa baru sehingga dibutuhkannya

aplikasi penerimaan peserta didik baru

(PPDB) berbasis android untuk dapat

membantu pihak sekolah khususnya dalam

mengurangi kehilangan data dan menyimpan

data siswa otomatis di sistem penerimaan

peserta didik baru berbasis android.


BAB III

METODOLOGI PENELITIAN

A. Tempat dan Waktu Penelitian

Penelitian ini dilakukan pada TK MUNNA yang beralamat di Jl.

Tanjung Barat Selatan No. 40, RT. 004, RW. 002 Kota Jakarta Selatan.

Penelitian ini direncanakan selama 3 bulan dari 15 Mei 2023 sampai dengan 31

Juli 2023, dengan jadwal sebagai berikut:

Tabel 3.1
Jadwal Penelitian

Mei Juni Juli


No Kegiatan 2023 2023 2023
1 2 3 4 1 2 3 4 1 2 3 4
1 Analisa
Kebutuhan
Sistem
2 Studi
Kepustakaan
3 Perancangan
Sistem
4 Implementasi

5 Pengujian
Sistem
6 Penulisan
Laporan
Sumber: Dokumen Pribadi (Nita Ameli, 2023)

37
38

B. Tahapan Penelitian

Gambar 3.1 Tahapan Penelitian


Sumber: Dokumen Pribadi (Nita Amelia, 2023)

Berikut penjelasan tahapan-tahapan dari tahapan penelitian di atas

adalah sebagai berikut:

1. Pengidentifikasian Masalah

Pada tahapan ini penulis melakukan identifikasi permasalahan di TK

MUNNA untuk membantu mengarahkan penulis ke arah yang lebih

spesifik dan terfokus. Ini membantu Anda mempersempit lingkup

penelitian sehingga tidak terlalu luas atau terlalu sempit.

2. Perumusan Masalah

Pada tahap selanjutnya dilakukan perumusan masalah yang terjadi pada

objek penelitian sekaligus merumuskan tujuan penelitian. Perumusan

masalah didapat dari hasil analisis penelitian pada waktu studi lapangan dan

data data yang diambil dari hasil wawancara dengan ruang lingkup TK

MUNNA. Hasil perumusan masalah ini sekaligus dijadikan tujuan dalam

penelitian yang dilakukan.

3. Pengumpulan Data dan Pengelolaan Data

Pada tahap yang ketiga dilakukan pengumpulan data – data yang diperlukan

sebagai bahan untuk memcahkan masalah yang telah dirumuskan pada


39

tahap kedua. Setelah data terkumpul, dilakukan pengolahan data yang akan

digunakan pada tahap analisis. Pada proses analisa dikaji data – data yang

ada menggunakan metode yang telah peneliti pelajari pada tahap awal.

4. Analisa

Analisa kebutuhan berguna untuk mendapatkan data-data yang akan

digunakan sebagai masukkan dari suatu sistem dan untuk memperoleh data

yang berhubungan dengan tugas akhir ini.

5. Kesimpulan dan Saran

Ini merupakan tahap terakhir yang dilakukan penulis dalam melakukan

penelitian. pada bagian ini peneliti akan menyampaikan kesimpulan singkat

dan saran-saran yang nantinya dapat menjadi masukan dan referensi untuk

peneliti selanjutnya ataupun bagi pihak lain yang berkepentingan.

C. Algoritma

1. Metode Rapid Application Development (RAD) adalah pendekatan

pengembangan perangkat lunak yang berfokus pada pengembangan cepat

dan iteratif melalui kolaborasi tim, pemangku kepentingan, dan pengguna.

Berikut adalah algoritma umum untuk penggunaan Metode RAD dalam

pengembangan aplikasi:

a. Identifikasi Kebutuhan:

1) Identifikasi kebutuhan dan tujuan aplikasi.

2) Identifikasi fitur-fitur yang harus ada dalam aplikasi.


40

b. Pengembangan:

Penulis melakukan pengembangan yang terdiri dari analis, desainer,

pengembang, dan pengguna.

c. Pemodelan Awal

1) Buat model awal dari antarmuka pengguna dan alur kerja.

2) Diskusikan dengan pengguna untuk memastikan pemahaman yang

tepat.

d. Pengembangan Prototipe

Buat prototipe aplikasi dengan fitur-fitur inti.

Prototipe harus dapat digunakan oleh pengguna meskipun dengan fitur

terbatas.

e. Pengujian dan Umpan Balik

1) Uji prototipe dengan pengguna dan peroleh umpan balik.

2) Berikan pengguna kesempatan untuk mengidentifikasi masalah

atau perbaikan.

f. Iterasi Cepat:

1) Gunakan umpan balik untuk memperbaiki prototipe.

2) Tambahkan fitur baru atau perbaiki yang ada.

g. Pengembangan Lanjutan

1) Lanjutkan pengembangan dengan menambahkan fitur-fitur dan

aspek teknis lainnya.

2) Tetap berfokus pada pengembangan iteratif.


41

h. Pengujian Lanjutan

1) Uji coba fitur baru yang telah ditambahkan.

2) Memastikan tidak ada masalah yang muncul.

i. Integrasi dan Pengujian Keseluruhan

1) Integrasi seluruh komponen dan fitur.

2) Uji coba aplikasi secara menyeluruh untuk memastikan kinerja

yang baik.

j. Pelatihan dan Implementasi

1) Lakukan pelatihan kepada pengguna tentang cara menggunakan

aplikasi.

2) Implementasikan aplikasi di lingkungan produksi.

k. Evaluasi dan Umpan Balik Akhir

1) Evaluasi aplikasi setelah digunakan dalam lingkungan nyata.

2) Peroleh umpan balik akhir dari pengguna tentang kepuasan dan

kinerja aplikasi.

l. Perbaikan dan Peningkatan

Berdasarkan umpan balik akhir, lakukan perbaikan dan peningkatan

pada aplikasi.

m. Penyelesaian Proyek

1) Setelah aplikasi dianggap memadai, proyek pengembangan

dianggap selesai.

2) Aplikasi siap untuk digunakan secara luas.


42

n. Evaluasi Metode RAD:

Evaluasi seberapa efektif Metode RAD dalam menghasilkan aplikasi

berkualitas dan sesuai dengan kebutuhan pengguna

Gambar 3.2 Tahap Rapid Application Development (RAD)


BAB IV

HASIL DAN PEMBAHASAN

A. Definisi Masalah dan Penyelesaian

Sistem yang saat ini digunakan pada Taman Kanak-Kanak Munna

atau TK. Munna, Tanjung barat jakarta selatan. Sistem lama yang sedang

berjalan saat ini yaitu :

Para calon peserta didik atau para orang tua calon peserta didik

mengambil formulir dibagian administrasi untuk diisi, setelah formulir diisi

formulir diserahkan ke bagian administrasi penerimaan siswa baru dan dicatat

ke dalam buku calon siswa secara manual.

Berdasarkan analisis di atas, sistem yang sedang berjalan sering kali

timbul permasalahan yang menjadi kelemahan pada sistem itu sendiri seperti

tidak lengkapnya data, kehilangan data saat data tersebut diperlukan sehingga

harus menulis ulang data itu kembali. Kelemahan yang lainnya yaitu

menimbulkan antrian pendaftaran yang menumpuk, pembuatan laporan

masih sangat lambat karena melibatkan banyak dokumen yang tersebar.

Permasalah menunjukan urgency akan adanya perangcangan aplikasi

penerimaan siswa baru di TK. Munna , dan untuk menjawab urgency tersebut

maka diambil sebuah keputusan untuk membuat aplikasi penerimaan peserta

didik baru yang diharapkan dapat mempermudah proses pendataan dan

pendaftaran peserta didik baru di TK. Munna, Tanjung barat, Jagakarasa,

Jakarta selatan.

43
44

B. Pembahasan Algoritma

Dalam pengembangan aplikasi penerimaan siswa baru

menggunakan Metode RAD pada TK MUNNA berbasis Java, algoritma-

algoritma kunci diterapkan untuk mengatasi berbagai masalah dan

memastikan kelancaran proses penerimaan siswa baru. Berikut adalah

beberapa contoh algoritma yang digunakan dalam aplikasi ini:

1. Pendaftaran Siswa Baru

Digunakan untuk mengelola proses pendaftaran siswa baru secara online.

Langkah-langkah yang diterapkan adalah:

a. Pengguna mengakses halaman pendaftaran dan mengisi formulir

dengan informasi yang diperlukan.

b. Sistem memvalidasi dan menyimpan data pendaftaran ke dalam

basis data.

c. Sistem menghasilkan nomor pendaftaran unik dan mengirimkan

email konfirmasi ke pengguna.

d. Memastikan bahwa data pendaftaran diambil dengan benar dan

tersimpan secara aman.

2. Seleksi Calon Siswa

Digunakan untuk proses seleksi calon siswa berdasarkan kriteria yang

telah ditentukan. Langkah-langkahnya adalah:

a. Sistem mengambil data pendaftaran dari basis data.

b. Sistem menerapkan kriteria seleksi yang melibatkan nilai, usia, dan

kriteria lainnya.
45

c. Calon siswa yang lolos seleksi ditandai dalam sistem.

d. Sistem mengirimkan email pemberitahuan kepada calon siswa yang

diterima.

e. Membantu memastikan transparansi dalam proses seleksi dan

memberikan pemberitahuan cepat kepada calon siswa yang berhasil.

3. Pengelolaan Dokumen

Digunakan untuk mengelola dokumen yang diunggah oleh calon siswa

dan orang tua. Langkah-langkahnya adalah:

a. Pengguna mengunggah dokumen yang diperlukan dalam format

yang ditentukan.

b. Sistem memeriksa validitas format dan ukuran dokumen.

c. Dokumen yang valid disimpan dalam direktori yang sesuai dengan

identitas siswa.

d. Informasi dokumen disimpan dalam basis data terkait siswa.

e. Algoritma ini membantu dalam pengelolaan dokumen secara

terstruktur dan efisien.

C. Pemodelan Perangkat Lunak

1. Unified Modeling Language (UML)

UML (Unified Modeling Language) adalah sebuah bahasa standar

yang digunakan untuk mendokumentasikan, merancang, dan memodelkan

sistem perangkat lunak. UML menyediakan notasi grafis yang terstandar

dan terstruktur untuk menggambarkan elemen-elemen dalam sistem,


46

hubungan antara elemen, dan perilaku sistem. Perancangan pemodelan

UML pada aplikasi ini bertujuan untuk mendefinisikan Prototyping

membuat analisis dan design serta menggambarkan arsitektur dalam

pemrograman berorientasi objek. Berikut ini adalah UML pada sistem

aplikasi yang akan dirancang berdasarkan sesuai kebutuhan user :

a. Diagram Use Case

Gambar 4.1 Diagram Use Case Penerimaan Siswa Baru


47

b. Diagram Activity Penerimaan Siswa Baru


1. Login Activity

Gambar 4.2 Login Activity


48

2. Clear Data Activity (Siswa Baru)

Gambar 4.3 Clear Data Activity (Siswa Baru)


49

3. Edit Data Activity (Siswa Baru)

Gambar 4.4 Edit Data Activity (Siswa Baru)


50

4. Hapus Data Activity (Siswa Baru)

Gambar 4.5 Hapus Data Activity (Siswa Baru)


51

5. Save Data Activity (Siswa Baru)

Gambar 4.6 Save Data Activity (Siswa Baru)


52

6. Clear Data Activity (Wali Murid)

Gambar 4.7 Clear Data Activity (Wali Murid)


53

7. Edit Data Activity (Wali Murid)

Ganbar 4.8 Edit Data Activity (Wali Murid)


54

8. Hapus Data Activity (Wali Murid)

Gambar 4.9 Hapus Data Activity (Wali Murid)


55

9. Save Data Activity (Wali Murid)

Gambar 4.10 Save Data Activity (Wali Murid)


56

10. Save Data Activity (Seleksi)

Gamba 4.11 Save Data Activity (Seleksi)


57

c. Class Diagram Penerimaan Siswa Baru

Gambar 4.12 Diagram Class Penerimaan Siswa Baru

d. Diagram Squence Penerimaan Siswa Baru

1. Squence Diagran Login

Gambar 4.13 Squence Diagram Login


58

2. Squence Diagram Data Siswa

Gambar 4.14 Squence Diagram Data Siswa

3. Squence Diagram Data Wali Murid

Gambar 4.15 Squence Diagram Wali Murid


59

4. Squence Diagram Seleksi

Gambar 4.16 Squence Diagram Seleksi

2. Rancangan Layar

Rancagan Layar adalah sebuah disain tampilan yang berfungsi sebagi

antar muka antara si pengguna (user) dengan Applikasi (Sistem), atau

biasa disebut dengan User Interface. (Fikri, 2015:2).

1. Rancangan Layar Login

Gambar 4.17 Rancnagan Layar Login


60

2. Rancangan Layar Menu Utama

Gambar 4.18 Rancangan Layar Menu Utama


61

3. Rancangan Layar Siswa

Gambar 4.19 Rancangan Layar Siswa


62

4. Rancangan Layar Wali Murid

Gambar 4.20 Rancangan Layar Wali Murid


63

5. Rancangan Layar Seleksi

Gambar 4. 21 Rancangan Layar Seleksi

3. Tampilan Layar

a. Halaman Login

Halaman Login ini merupakan pintu masuk ke Halaman utama,

halaman login berisi Username, Password, tombol Masuk dan

tombol Keluar

Gambar 4.22 Login


64

b. Halaman Menu Utama

Halaman Utama merupakan halaman yang berisi tombol untuk

mengakses ke semua halaman seperti Pendaftaran Siswa Baru, Report

Data Siswa Baru, Report Data Orang Tua, dan Keluar

Gambar 4.23 Main Page / Halaman Utama

c. Halaman Siswa

Halaman Siswa merupakan halaman dimana data-data siswa

baru, disini juga ada beberapa tombol untuk simpan data, edit,

hapus, dan clear.


65

Gambar 4.24 Halaman Data Siswa

d. Halaman Wali Murid

Halaman Siswa merupakan halaman dimana data-data siswa

baru, disini juga ada beberapa tombol untuk simpan data, edit,

hapus, dan clear.

Gambar 4.25 Halaman Wali Murid


66

e. Halaman Seleksi Siswa Baru

Halaman ini adalah data laporan informasi Siswa Baru

Gambar 4.26 Halaman Seleksi


67

f. Halaman Report Data Siswa Baru

Halaman ini adalah data laporan informasi Siswa Baru

Gambar 4.27 Halaman Report Data Siswa Baru


68

g. Halaman Report Data Wali Murid

Halaman ini adalah data laporan informasi Wali Murid

Gambar 4.28 Halaman Report Data Wali Murid


69

g. Halaman Report Data Hasil Seleksi

Halaman ini adalah data laporan informasi Hasil Seleksi

Gambar 4.29 Halaman Report Data Hasil Seleksi


70

D. Kelebihan dan Kelemahan Penelitian

1. Kelebihan:

a. Solusi yang Cepat dan Terfokus

Metode Rapid Application Development (RAD) memungkinkan

pengembangan cepat dan iteratif, sehingga aplikasi dapat

diimplementasikan dengan lebih cepat dan tanggap terhadap perubahan

kebutuhan.

b. Pengguna Terlibat Aktif

Melalui pendekatan RAD, pengguna (siswa dan orang tua) dapat terlibat

aktif dalam proses pengembangan, memastikan bahwa aplikasi

memenuhi kebutuhan mereka dengan lebih baik.

c. Pengalaman Pengguna yang Lebih Baik

Dengan desain antarmuka yang lebih terfokus pada kebutuhan

pengguna, aplikasi memiliki potensi untuk memberikan pengalaman

pengguna yang lebih baik dan mudah digunakan.

d. Efisiensi Proses Penerimaan

Aplikasi ini dapat meningkatkan efisiensi dalam proses penerimaan

siswa baru, mengurangi kerumitan administratif dan meminimalkan

kehilangan data.

e. Pemeliharaan yang Mudah

Desain iteratif dalam RAD memungkinkan pemeliharaan dan

peningkatan aplikasi lebih mudah dan terarah.


71

2. Kelemahan

a. Keterbatasan Umur Sistem

Dalam kasus penerimaan siswa baru di TK, perlu dipertimbangkan

bahwa aplikasi ini mungkin hanya berlaku untuk beberapa tahun,

karena anak-anak hanya akan berada di TK dalam rentang waktu

tertentu.

b. Ketergantungan pada Keterampilan Tim

Keberhasilan pengembangan dengan metode RAD sangat tergantung

pada keterampilan anggota tim dalam komunikasi, kolaborasi, dan

pengembangan cepat.

c. Keterbatasan Lingkup Proyek

Metode RAD mungkin tidak cocok untuk proyek yang sangat besar atau

kompleks, karena fokusnya pada pengembangan yang cepat dan iteratif.

d. Ketidakpastian dalam Pengembangan

Pendekatan RAD dapat menciptakan tingkat ketidakpastian yang lebih

tinggi dalam hal waktu dan biaya, terutama jika perubahan-perubahan

dilakukan secara berulang-ulang.

e. Pemahaman yang Tidak Sempurna

Dalam beberapa kasus, pemahaman yang kurang tepat terhadap

kebutuhan pengguna awal dapat mengarah pada hasil yang kurang

memuaskan
BAB V

SIMPULAN DAN SARAN

A. Simpulan

Penelitian ini mengkaji pengembangan aplikasi penerimaan siswa

baru menggunakan Metode Rapid Application Development (RAD) pada TK

MUNNA berbasis Java. Hasil penelitian menunjukkan bahwa penggunaan

metode RAD dalam pengembangan aplikasi ini memberikan berbagai

manfaat, termasuk kemampuan untuk menghasilkan prototipe awal dengan

cepat, melibatkan pengguna aktif dalam proses pengembangan, dan

menghasilkan aplikasi dengan fokus pada kebutuhan pengguna.

Dalam implementasi aplikasi ini, berhasil dirancang dan

dikembangkan antarmuka yang memungkinkan calon siswa dan orang tua

untuk melakukan pendaftaran siswa baru. Proses seleksi siswa juga dapat

dilakukan dengan lebih efisien melalui aplikasi ini. Kesederhanaan desain

antarmuka memberikan pengalaman pengguna yang baik dan memudahkan

pengguna dalam mengakses informasi.

B. Saran

Berikut adalah beberapa saran yang dapat diberikan berdasarkan

hasil penelitian ini:

72
73

1. Pengembangan Lanjutan Aplikasi

Meskipun aplikasi ini telah berhasil dirancang dan dikembangkan dengan

Metode RAD, tetap ada ruang untuk pengembangan lanjutan.

Pengembangan fitur tambahan seperti pengingat tenggat waktu, integrasi

dengan sistem lainnya, atau peningkatan desain antarmuka dapat menjadi

fokus pengembangan selanjutnya.

2. Uji Coba Lebih Lanjut

Meskipun telah dilakukan pengujian prototipe dengan pengguna, uji coba

lebih lanjut perlu dilakukan dalam skala yang lebih besar untuk

mengidentifikasi masalah atau tantangan lainnya yang mungkin muncul

saat aplikasi digunakan secara luas.

3. Pelatihan Pengguna

Melakukan pelatihan kepada pengguna (siswa, orang tua, dan petugas

administrasi) tentang cara menggunakan aplikasi dengan efektif dapat

membantu dalam meningkatkan penerimaan dan adopsi aplikasi.

4. Pemeliharaan dan Dukungan

Setelah aplikasi diterapkan, perhatian harus diberikan pada pemeliharaan

rutin, penanganan masalah, dan dukungan teknis bagi pengguna.

5. Evaluasi Terhadap Metode RAD

Mengadakan evaluasi terhadap penggunaan Metode RAD dalam

pengembangan aplikasi ini untuk mengidentifikasi kelebihan dan

kelemahan yang lebih spesifik dalam konteks penelitian ini.


DAFTAR PUSTAKA

Siregar, HF. Siregar, YH & Melani M. 2018, “Perancangan Aplikasi Komik Hadist
Berbasis Multimedia. JurTI (Jurnal Teknologi Informasi). Asahan :
Universitas Asahan.

Nur, R dan Sayuti, AM. 2018. Perancangan Mesin-Mesin Industri. Yogyakarta:


Deepublish

Setyanto, Eko. 2019. “Analisis dan Perancangan Sistem Informasi Pengurangan


Pajak Bumi dan Bangunan”. Bandung: Universitas Nasional Pasim.

Pramana, HW. (2012). Aplikasi Inventory Berbasis Access 2003. Jakarta : PT.Elex
Media Komputindo.

Setyawan, MYH & Munari, AS. 2020. Panduan Lengkap Membangun Sistem
Monitoring Kinerja Mahasiswa Internship. Bandung: Kreatif Industri
Nusantara.

A. Effendi. 2016. The power of good corporate governance : teori dan


implementasi (Edisi 2). Jakarta: Salemba Empat.

Rohiat. 2012. Manajemen Sekolah: teori dasar dan praktik. Bandung: PT Refika
Aditama.

Depdiknas .2003. Undang-undang RI No.20 tahun 2003.tentang sistem pendidikan


nasional.

Saputra, A. 2012. Membuat Aplikasi Absensi Dan Kuesioner untuk Panduan


Skripsi. Jakarta: PT. Elex Media Komputindo.

Aditama, Roki. 2017. Web Service Pembayaran Uang Kuliah Online Dengan PHP
dan SOAP WSDL. Yogyakarta. CV LOKOMEDIA.

Roby, Yanto (2016). Manajemen Basis Data Menggunakan MySQL.Yogyakarta:


Deepublish.

Suharsini, A, dkk. 2015. Penelitian Tindakan Kelas.Jakarta: Bumi Aksara.

Abdulloh, R. 2018. 7 in 1 Pemrograman Web untuk Pemula. Jakarta: PT. Elex


Media Komputindo.
Kurniawan, R & Marhamelda, S. 2019. Sistem Pengolahan Data Peserta Didik
Pada Lkp Prima Tama Komputer Dumai Dengan Menggunakan Bahasa
Pemrograman PHP. Dumai: STMIK Dumai.

Vandenberg, S. L., Yoder, R. C., Kroenke, D. M., & Auer, D. J. (2016). Database
Processing Fundamentals, Design, and Implementation (15th ed.). Pearson.

Alvaro, F. 2019. SQL: Easy SQL Programming & Database Managment for
Beginners. USA: CreateSpace Independent Publishing Platform.

Anhar. 2016. Kumpulan Sourch Code Visual Basic 6.0 untuk Skripsi. Jakarta: PT
Elex Media Komputindo.

S, Bagas Bayu. 2019. Rancang Bangun Aplikasi Penerimaan Siswa Baru Berbasis
Web Pada SD Katolik Marsudisiwi Malang. Surabaya: STIKOM Surabaya.

Nugroho, I. 2011. Sistem Informasi Penerimaan Siswa Baru Berbasis Web dengan
PHP dan MySQL. Yogyakarta: Universitas Negeri Yogyakarta.

Zubair, H.R & Ernawati, I. 2022. Perancangan Sistem Informasi Pendaftaran


Murid Baru pada PAUD Kangguru Kecil Berbasis WEB. Jakarta: Universitas
Pembangunan Nasional Veteran Jakarta.

Saribu, Boni P.D. Thomas, A. & Kusmanto, T.H. 2022. Sistem Penerimaan Peserta
Didik Baru Berbasis Java pada SDN Gandara Selatan. Jakarta: Universitas
Indraprasta PGRI.

Iqbal, M. 2021. Rancangan Aplikasi Pendataan Penerimaan Siswa Baru SMP


NURUL IHSAN Jakarta Berbasis Android. Jakarta : Universitas Indraprasta
PGRI.

Fikri Zulfikar, A. 2011. Rancangan Layar Grafik User Interface Objek Oriented
Disain. http://www.slideshare.net/HamdaniHamid/pertemuan8-10435091.
DAFTAR RIWAYAT HIDUP PENULIS

Penulis lahir di Jakarta pada 17 Maret 1996. Memiliki nama

lengkap Nita Amelia. Penulis pernah menempuh pendidikan

di SDN 08 Jakarta pada 2002-2008. Penulis juga pernah

menempuh pendidikan di SMPN 212 Jakarta pada 2008-

2011 lalu melanjutkan ke SMK purnama 2 Jakarta pada

2011-2014. Penulis pernah bekerja di perusahaan PT.pasaraya tosersajaya sebagai

kasir, waiters, barista di Kopitiam, batik cafe selama kurang lebih 4 tahun ,dan

terakhir bekerja di PT Mega finance sebagai sales force selama 4 bulan.


LISTING PROGRAM

A. Login
1. package LoginAdmin;
2. import tk_munna.MenuUtama;
3. import Java.SQL.*;
4. import java.util.logging.Level;
5. import java.util.logging.Logger;
6. import javax.swing.JOptionPane;
7. import koneksi.koneksi;
8. /*
9. * To change this license header, choose License Headers in Project
Properties.
10. * To change this template file, choose Tools | Templates
11. * and open the template in the editor.
12. */
13.
14. /**
15. *
16. * @author 002
17. */
18. public class login extends javax.swing.JFrame {
19.
20. /**
21. * Creates new form Login
22. */
23. private Connection conn = new koneksi().connect();
24. private Statement stat;
25. private String SQL;
26.
27. public login() {
28. initComponents();
29. open();
30. }
31.
32. public void open(){
33. try {
34. stat = conn.createStatement();
35. } catch (SQLException ex) {
36. Logger.getLogger(login.class.getName()).log(Level.SEVERE, null,
ex);
37. }
38. }
39.
40. public void kosong(){
41. tUser.setText("");
42. tPass.setText("");
43. tUser.requestFocus();
44. }
45.
46. /**
47. * This method is called from within the constructor to initialize the
form.
48. * WARNING: Do NOT modify this code. The content of this method is
always
49. regenerated by the FormPasien Editor.
50. */
51. @SuppressWarnings("unchecked")
52. // <editor-fold defaultstate="collapsed" desc="Generated Code">
53. private void initComponents() {
54.
55. jPanel1 = new javax.swing.JPanel();
56. bLog = new javax.swing.JButton();
57. jLabel4 = new javax.swing.JLabel();
58. tPass = new javax.swing.JPasswordField();
59. jLabel3 = new javax.swing.JLabel();
60. jLabel1 = new javax.swing.JLabel();
61. jLabel2 = new javax.swing.JLabel();
62. bCan = new javax.swing.JButton();
63. tUser = new javax.swing.JTextField();
64.
65.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
66.
67. jPanel1.setBackground(new java.awt.Color(153, 255, 153));
68.
69. bLog.setBackground(new java.awt.Color(255, 255, 255));
70. bLog.setText("Login");
71. bLog.addActionListener(new java.awt.event.ActionListener() {
72. public void actionPerformed(java.awt.event.ActionEvent evt) {
73. bLogActionPerformed(evt);
74. }
75. });
76.
77. jLabel4.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
78. jLabel4.setText("Login");
79.
80. jLabel1.setBackground(new java.awt.Color(255, 255, 255));
81. jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 12)); //
NOI18N
82. jLabel1.setText("Username");
83.
84. jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 12)); //
NOI18N
85. jLabel2.setText("Password");
86.
87. bCan.setBackground(new java.awt.Color(255, 255, 255));
88. bCan.setText("Cancel");
89. bCan.addActionListener(new java.awt.event.ActionListener() {
90. public void actionPerformed(java.awt.event.ActionEvent evt) {
91. bCanActionPerformed(evt);
92. }
93. });
94.
95. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
96. jPanel1.setLayout(jPanel1Layout);
97. jPanel1Layout.setHorizontalGroup(
98.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
99. .addGroup(jPanel1Layout.createSequentialGroup()
100. .addGap(58, 58, 58)
101. .addComponent(bLog,
javax.swing.GroupLayout.PREFERRED_SIZE, 99,
javax.swing.GroupLayout.PREFERRED_SIZE)
102. .addGap(135, 135, 135)
103. .addComponent(bCan,
javax.swing.GroupLayout.PREFERRED_SIZE, 98,
javax.swing.GroupLayout.PREFERRED_SIZE)
104. .addGap(0, 66, Short.MAX_VALUE))
105. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
106. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
107.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
108. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
109.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
110.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
111. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 59,
javax.swing.GroupLayout.PREFERRED_SIZE)
112. .addGap(18, 18, 18)
113. .addComponent(tUser,
javax.swing.GroupLayout.PREFERRED_SIZE, 207,
javax.swing.GroupLayout.PREFERRED_SIZE))
114.
.addGroup(jPanel1Layout.createSequentialGroup()
115. .addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_SIZE, 59,
javax.swing.GroupLayout.PREFERRED_SIZE)
116. .addGap(18, 18, 18)
117. .addComponent(tPass,
javax.swing.GroupLayout.PREFERRED_SIZE, 207,
javax.swing.GroupLayout.PREFERRED_SIZE)))
118. .addGap(84, 84, 84))
119. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
120. .addComponent(jLabel4)
121. .addGap(190, 190, 190))))
122.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
123. .addGroup(jPanel1Layout.createSequentialGroup()
124. .addGap(0, 50, Short.MAX_VALUE)
125. .addComponent(jLabel3)
126. .addGap(0, 228, Short.MAX_VALUE)))
127. );
128. jPanel1Layout.setVerticalGroup(
129.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
130. .addGroup(jPanel1Layout.createSequentialGroup()
131. .addContainerGap(42, Short.MAX_VALUE)
132. .addComponent(jLabel4)
133. .addGap(18, 18, 18)
134.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
135. .addComponent(tUser,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE)
136. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE))
137. .addGap(18, 18, 18)
138.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
139. .addComponent(tPass,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE)
140. .addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE))
141. .addGap(40, 40, 40)
142.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
143. .addComponent(bCan,
javax.swing.GroupLayout.PREFERRED_SIZE, 36,
javax.swing.GroupLayout.PREFERRED_SIZE)
144. .addComponent(bLog,
javax.swing.GroupLayout.PREFERRED_SIZE, 36,
javax.swing.GroupLayout.PREFERRED_SIZE))
145. .addGap(42, 42, 42))
146.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
147. .addGroup(jPanel1Layout.createSequentialGroup()
148. .addGap(0, 18, Short.MAX_VALUE)
149. .addComponent(jLabel3)
150. .addGap(0, 140, Short.MAX_VALUE)))
151. );
152.
153. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
154. getContentPane().setLayout(layout);
155. layout.setHorizontalGroup(
156.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
157. .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
158. );
159. layout.setVerticalGroup(
160.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
161. .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
162. );
163.
164. pack();
165. }// </editor-fold>
166.
167. private void bLogActionPerformed(java.awt.event.ActionEvent evt) {
168. // TODO add your handling code here:
169. String user = tUser.getText();
170. String pass = tPass.getText();
171.
172. try{
173. SQL = "SELECT * FROM admin WHERE username='"+user+"' AND
password='"+pass+"'";
174. ResultSet hasil = stat.executeQuery(SQL);
175.
176. if(hasil.next()){
177. if (user.equals(hasil.getString("username")) &&
pass.equals(hasil.getString("password"))){
178. JOptionPane.showMessageDialog(null, "Login
Berhasil");
179. new MenuUtama().show();
180. this.dispose();
181. }
182. }else{
183. JOptionPane.showMessageDialog(null, "Login gagal");
184. tUser.setText("");
185. tPass.setText("");
186. tUser.requestFocus(true);
187. }
188. }catch(Exception e){
189. JOptionPane.showMessageDialog(this, e.getMessage());
190. }
191. }
192.
193. private void bCanActionPerformed(java.awt.event.ActionEvent evt) {
194. // TODO add your handling code here:
195. kosong();
196. }
197.
198. /**
199. * @param args the command line arguments
200. */
201. public static void main(String args[]) {
202. /* Set the Nimbus look and feel */
203. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
204. /* If Nimbus (introduced in Java SE 6) is not available, stay
with the default look and feel.
205. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
206. */
207. try {
208. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
209. if ("Nimbus".equals(info.getName())) {
210.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
211. break;
212. }
213. }
214. } catch (ClassNotFoundException ex) {
215.
java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.log
ging.Level.SEVERE, null, ex);
216. } catch (InstantiationException ex) {
217.
java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.log
ging.Level.SEVERE, null, ex);
218. } catch (IllegalAccessException ex) {
219.
java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.log
ging.Level.SEVERE, null, ex);
220. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
221.
java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.log
ging.Level.SEVERE, null, ex);
222. }
223. //</editor-fold>
224. //</editor-fold>
225. //</editor-fold>
226. //</editor-fold>
227. //</editor-fold>
228. //</editor-fold>
229. //</editor-fold>
230. //</editor-fold>
231. //</editor-fold>
232. //</editor-fold>
233. //</editor-fold>
234. //</editor-fold>
235. //</editor-fold>
236. //</editor-fold>
237. //</editor-fold>
238. //</editor-fold>
239. //</editor-fold>
240. //</editor-fold>
241. //</editor-fold>
242. //</editor-fold>
243. //</editor-fold>
244. //</editor-fold>
245. //</editor-fold>
246. //</editor-fold>
247. //</editor-fold>
248. //</editor-fold>
249. //</editor-fold>
250. //</editor-fold>
251. //</editor-fold>
252. //</editor-fold>
253. //</editor-fold>
254. //</editor-fold>
255.
256. /* Create and display the form */
257. java.awt.EventQueue.invokeLater(new Runnable() {
258. public void run() {
259. new login().setVisible(true);
260. }
261. });
262. }
263.
264. // Variables declaration - do not modify
265. private javax.swing.JButton bCan;
266. private javax.swing.JButton bLog;
267. private javax.swing.JLabel jLabel1;
268. private javax.swing.JLabel jLabel2;
269. private javax.swing.JLabel jLabel3;
270. private javax.swing.JLabel jLabel4;
271. private javax.swing.JPanel jPanel1;
272. private javax.swing.JPasswordField tPass;
273. private javax.swing.JTextField tUser;
274. // End of variables declaration
275. }
276.

B. Koneksi

1. package koneksi;
2.
3. import com.MySQL.jdbc.Connection;
4. import java.SQL.DriverManager;
5. import java.SQL.SQLException;
6.
7. /**
8. *
9. * @author LENOVO
10. */
11. public class koneksi {
12. private Connection koneksi;
13. public Connection connect(){
14. try{
15. Class.forName("com.MySQL.jdbc.Driver");
16. System.out.println("Berhasil Koneksi!");
17. }catch(ClassNotFoundException ex){
18. System.out.println("Gagal Koneksi ! "+ex);
19. }
20.
21. String url = "jdbc:MySQL://localhost/tk_munna";
22.
23. try{
24. koneksi = (Connection)
DriverManager.getConnection(url,"root","");
25. System.out.println("Berhasil Koneksi Database!");
26. }catch(SQLException ex){
27. System.out.println("Gagal koneksi Database! "+ex);
28.
29. }
30.
31. return koneksi;
32. }
33. }
34. 2. Menu Utama
35. package tk_munna;
36. import LoginAdmin.login;
37. import LoginAdmin.login;
38. import java.awt.Color;
39. import java.awt.Cursor;
40. import java.awt.Panel;
41. import java.awt.event.ActionListener;
42. import javax.swing.JPanel;
43. import java.awt.event.ActionEvent;
44. import java.awt.event.ActionListener;
45. import java.io.File;
46. import java.SQL.Connection;
47. import java.text.DateFormat;
48. import java.text.SimpleDateFormat;
49. import java.util.Date;
50. import java.util.HashMap;
51. import javax.swing.JOptionPane;
52. import javax.swing.Timer;
53. import koneksi.koneksi;
54. import net.sf.jasperreports.engine.JasperFillManager;
55. import net.sf.jasperreports.engine.JasperPrint;
56. import net.sf.jasperreports.engine.JasperReport;
57. import net.sf.jasperreports.engine.util.JRLoader;
58. import net.sf.jasperreports.view.JasperViewer;
59. /*
60. * To change this license header, choose License Headers in Project
Properties.
61. * To change this template file, choose Tools | Templates
62. * and open the template in the editor.
63. */
64.
65. /**
66. *
67. * @author 002
68. */
69. public class MenuUtama extends javax.swing.JFrame {
70.
71. /**
72. * Creates new form menu
73. */
74. Timer timer;
75. Color hoverButton;
76. private Connection conn = new koneksi().connect();
77.
78. public MenuUtama() {
79. initComponents();
80. setVisible(true);
81.
82. sliderMenuDefault();
83.
84.
85. this.hoverButton = form.getBackground();
86.
87.
88. }
89.
90. // untuk sliderMenu
91. private void sliderMenuDefault(){
92. slideMenuForm.setVisible(false);
93. slideMenuTransaksi.setVisible(false);
94. slideMenuLaporan.setVisible(false);
95. }
96.
97. private void hiddenSubMenu(){
98. if(slideMenuForm.isVisible() == true){
99. slideMenuForm.setVisible(false);
100. }
101. if(slideMenuTransaksi.isVisible() == true){
102. slideMenuTransaksi.setVisible(false);
103. }
104. if(slideMenuLaporan.isVisible() == true){
105. slideMenuLaporan.setVisible(false);
106. }
107. }
108.
109. private void showSubMenu(JPanel subMenu){
110. if(subMenu.isVisible() == false){
111. hiddenSubMenu();
112. subMenu.setVisible(true);
113. }else{
114. subMenu.setVisible(false);
115. }
116. }
117. //akhis slider menu
118.
119. //clock
120. /**
121. * This method is called from within the constructor to initialize
the form.
122. * WARNING: Do NOT modify this code. The content of this method is
always
123. * regenerated by the Form Editor.
124. */
125. @SuppressWarnings("unchecked")
126. // <editor-fold defaultstate="collapsed" desc="Generated Code">
127. private void initComponents() {
128.
129. PanelDashboard = new javax.swing.JPanel();
130. Menu = new javax.swing.JPanel();
131. Panel2 = new javax.swing.JPanel();
132. dashboard = new javax.swing.JLabel();
133. transaksi = new javax.swing.JLabel();
134. laporan = new javax.swing.JLabel();
135. slideMenuForm = new javax.swing.JPanel();
136. menuGuru = new javax.swing.JLabel();
137. menuSiswa = new javax.swing.JLabel();
138. slideMenuTransaksi = new javax.swing.JPanel();
139. menuNilai = new javax.swing.JLabel();
140. slideMenuLaporan = new javax.swing.JPanel();
141. menuReportGuru = new javax.swing.JLabel();
142. menuReportSiswa = new javax.swing.JLabel();
143. menuReportNilai = new javax.swing.JLabel();
144. form = new javax.swing.JLabel();
145. logout = new javax.swing.JLabel();
146. MenuLogo = new javax.swing.JPanel();
147. logo = new javax.swing.JLabel();
148. judul1 = new javax.swing.JLabel();
149. judul2 = new javax.swing.JLabel();
150. Pane = new javax.swing.JPanel();
151. Panel3 = new javax.swing.JPanel();
152. jLabel9 = new javax.swing.JLabel();
153. jPanel1 = new javax.swing.JPanel();
154. jLabel15 = new javax.swing.JLabel();
155. jLabel1 = new javax.swing.JLabel();
156. jLabel2 = new javax.swing.JLabel();
157. jMenuBar1 = new javax.swing.JMenuBar();
158.
159.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
160. setMinimumSize(new java.awt.Dimension(1000, 620));
161. setSize(new java.awt.Dimension(0, 0));
162.
163. PanelDashboard.setBackground(new java.awt.Color(255, 71, 71));
164. PanelDashboard.setBorder(new javax.swing.border.LineBorder(new
java.awt.Color(255, 255, 255), 3, true));
165. PanelDashboard.setMaximumSize(new java.awt.Dimension(1500, 700));
166. PanelDashboard.setMinimumSize(new java.awt.Dimension(950, 520));
167. PanelDashboard.setPreferredSize(new java.awt.Dimension(1100,
590));
168.
169. Menu.setBackground(new java.awt.Color(255, 71, 71));
170. Menu.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(255, 255, 255), 3));
171. Menu.setMaximumSize(new java.awt.Dimension(32767, 600));
172.
173. Panel2.setBackground(new java.awt.Color(153, 255, 153));
174. Panel2.setCursor(new
java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
175.
176. dashboard.setBackground(new java.awt.Color(153, 255, 153));
177. dashboard.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
178. dashboard.setForeground(new java.awt.Color(255, 255, 255));
179.
dashboard.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
180. dashboard.setText(" Dashboard");
181.
dashboard.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing
.border.BevelBorder.RAISED));
182. dashboard.setOpaque(true);
183. dashboard.addMouseListener(new java.awt.event.MouseAdapter() {
184. public void mouseClicked(java.awt.event.MouseEvent evt) {
185. dashboardMouseClicked(evt);
186. }
187. public void mouseEntered(java.awt.event.MouseEvent evt) {
188. dashboardMouseEntered(evt);
189. }
190. public void mouseExited(java.awt.event.MouseEvent evt) {
191. dashboardMouseExited(evt);
192. }
193. });
194.
195. transaksi.setBackground(new java.awt.Color(153, 255, 153));
196. transaksi.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
197. transaksi.setForeground(new java.awt.Color(255, 255, 255));
198.
transaksi.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
199. transaksi.setText(" Transaksi");
200.
transaksi.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing
.border.BevelBorder.RAISED));
201. transaksi.setOpaque(true);
202. transaksi.addMouseListener(new java.awt.event.MouseAdapter() {
203. public void mouseClicked(java.awt.event.MouseEvent evt) {
204. transaksiMouseClicked(evt);
205. }
206. public void mouseEntered(java.awt.event.MouseEvent evt) {
207. transaksiMouseEntered(evt);
208. }
209. public void mouseExited(java.awt.event.MouseEvent evt) {
210. transaksiMouseExited(evt);
211. }
212. });
213.
214. laporan.setBackground(new java.awt.Color(153, 255, 153));
215. laporan.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
216. laporan.setForeground(new java.awt.Color(255, 255, 255));
217.
laporan.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
218. laporan.setText(" Laporan");
219.
laporan.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.b
order.BevelBorder.RAISED));
220. laporan.setOpaque(true);
221. laporan.addMouseListener(new java.awt.event.MouseAdapter() {
222. public void mouseClicked(java.awt.event.MouseEvent evt) {
223. laporanMouseClicked(evt);
224. }
225. public void mouseEntered(java.awt.event.MouseEvent evt) {
226. laporanMouseEntered(evt);
227. }
228. public void mouseExited(java.awt.event.MouseEvent evt) {
229. laporanMouseExited(evt);
230. }
231. });
232.
233. slideMenuForm.setBackground(new java.awt.Color(255, 255, 255));
234.
235. menuGuru.setBackground(new java.awt.Color(255, 255, 255));
236. menuGuru.setText(" Wali Murid");
237. menuGuru.setCursor(new
java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
238. menuGuru.setOpaque(true);
239. menuGuru.addMouseListener(new java.awt.event.MouseAdapter() {
240. public void mouseClicked(java.awt.event.MouseEvent evt) {
241. menuGuruMouseClicked(evt);
242. }
243. public void mouseEntered(java.awt.event.MouseEvent evt) {
244. menuGuruMouseEntered(evt);
245. }
246. public void mouseExited(java.awt.event.MouseEvent evt) {
247. menuGuruMouseExited(evt);
248. }
249. });
250.
251. menuSiswa.setBackground(new java.awt.Color(255, 255, 255));
252. menuSiswa.setText(" Siswa");
253. menuSiswa.setOpaque(true);
254. menuSiswa.addMouseListener(new java.awt.event.MouseAdapter() {
255. public void mouseClicked(java.awt.event.MouseEvent evt) {
256. menuSiswaMouseClicked(evt);
257. }
258. public void mouseEntered(java.awt.event.MouseEvent evt) {
259. menuSiswaMouseEntered(evt);
260. }
261. public void mouseExited(java.awt.event.MouseEvent evt) {
262. menuSiswaMouseExited(evt);
263. }
264. });
265.
266. javax.swing.GroupLayout slideMenuFormLayout = new
javax.swing.GroupLayout(slideMenuForm);
267. slideMenuForm.setLayout(slideMenuFormLayout);
268. slideMenuFormLayout.setHorizontalGroup(
269.
slideMenuFormLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.L
EADING)
270. .addComponent(menuGuru, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
271. .addComponent(menuSiswa,
javax.swing.GroupLayout.DEFAULT_SIZE, 223, Short.MAX_VALUE)
272. );
273. slideMenuFormLayout.setVerticalGroup(
274.
slideMenuFormLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.L
EADING)
275. .addGroup(slideMenuFormLayout.createSequentialGroup()
276. .addComponent(menuGuru,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE)
277.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
278. .addComponent(menuSiswa,
javax.swing.GroupLayout.DEFAULT_SIZE, 27, Short.MAX_VALUE))
279. );
280.
281. slideMenuTransaksi.setBackground(new java.awt.Color(255, 255,
255));
282.
283. menuNilai.setBackground(new java.awt.Color(255, 255, 255));
284. menuNilai.setText(" Seleksi");
285. menuNilai.setOpaque(true);
286. menuNilai.addMouseListener(new java.awt.event.MouseAdapter() {
287. public void mouseClicked(java.awt.event.MouseEvent evt) {
288. menuNilaiMouseClicked(evt);
289. }
290. public void mouseEntered(java.awt.event.MouseEvent evt) {
291. menuNilaiMouseEntered(evt);
292. }
293. public void mouseExited(java.awt.event.MouseEvent evt) {
294. menuNilaiMouseExited(evt);
295. }
296. });
297.
298. javax.swing.GroupLayout slideMenuTransaksiLayout = new
javax.swing.GroupLayout(slideMenuTransaksi);
299. slideMenuTransaksi.setLayout(slideMenuTransaksiLayout);
300. slideMenuTransaksiLayout.setHorizontalGroup(
301.
slideMenuTransaksiLayout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
302. .addGap(0, 223, Short.MAX_VALUE)
303.
.addGroup(slideMenuTransaksiLayout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
304. .addComponent(menuNilai,
javax.swing.GroupLayout.DEFAULT_SIZE, 184, Short.MAX_VALUE))
305. );
306. slideMenuTransaksiLayout.setVerticalGroup(
307.
slideMenuTransaksiLayout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
308. .addGap(0, 41, Short.MAX_VALUE)
309.
.addGroup(slideMenuTransaksiLayout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
310.
.addGroup(slideMenuTransaksiLayout.createSequentialGroup()
311. .addComponent(menuNilai,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE)
312. .addGap(0, 14, Short.MAX_VALUE)))
313. );
314.
315. slideMenuLaporan.setBackground(new java.awt.Color(255, 255,
255));
316.
317. menuReportGuru.setBackground(new java.awt.Color(255, 255, 255));
318. menuReportGuru.setText(" Laporan Data Wali Murid");
319. menuReportGuru.setCursor(new
java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
320. menuReportGuru.setOpaque(true);
321. menuReportGuru.addMouseListener(new java.awt.event.MouseAdapter()
{
322. public void mouseClicked(java.awt.event.MouseEvent evt) {
323. menuReportGuruMouseClicked(evt);
324. }
325. public void mouseEntered(java.awt.event.MouseEvent evt) {
326. menuReportGuruMouseEntered(evt);
327. }
328. public void mouseExited(java.awt.event.MouseEvent evt) {
329. menuReportGuruMouseExited(evt);
330. }
331. });
332.
333. menuReportSiswa.setBackground(new java.awt.Color(255, 255, 255));
334. menuReportSiswa.setText(" Laporan Data Siswa");
335. menuReportSiswa.setCursor(new
java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
336. menuReportSiswa.setOpaque(true);
337. menuReportSiswa.addMouseListener(new
java.awt.event.MouseAdapter() {
338. public void mouseClicked(java.awt.event.MouseEvent evt) {
339. menuReportSiswaMouseClicked(evt);
340. }
341. public void mouseEntered(java.awt.event.MouseEvent evt) {
342. menuReportSiswaMouseEntered(evt);
343. }
344. public void mouseExited(java.awt.event.MouseEvent evt) {
345. menuReportSiswaMouseExited(evt);
346. }
347. });
348.
349. menuReportNilai.setBackground(new java.awt.Color(255, 255, 255));
350. menuReportNilai.setText(" Laporan Data Hasil Seleksi");
351. menuReportNilai.setCursor(new
java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
352. menuReportNilai.setOpaque(true);
353. menuReportNilai.addMouseListener(new
java.awt.event.MouseAdapter() {
354. public void mouseClicked(java.awt.event.MouseEvent evt) {
355. menuReportNilaiMouseClicked(evt);
356. }
357. public void mouseEntered(java.awt.event.MouseEvent evt) {
358. menuReportNilaiMouseEntered(evt);
359. }
360. public void mouseExited(java.awt.event.MouseEvent evt) {
361. menuReportNilaiMouseExited(evt);
362. }
363. });
364.
365. javax.swing.GroupLayout slideMenuLaporanLayout = new
javax.swing.GroupLayout(slideMenuLaporan);
366. slideMenuLaporan.setLayout(slideMenuLaporanLayout);
367. slideMenuLaporanLayout.setHorizontalGroup(
368.
slideMenuLaporanLayout.createParallelGroup(javax.swing.GroupLayout.Alignmen
t.LEADING)
369. .addComponent(menuReportGuru,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
370. .addComponent(menuReportSiswa,
javax.swing.GroupLayout.DEFAULT_SIZE, 223, Short.MAX_VALUE)
371. .addComponent(menuReportNilai,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
372. );
373. slideMenuLaporanLayout.setVerticalGroup(
374.
slideMenuLaporanLayout.createParallelGroup(javax.swing.GroupLayout.Alignmen
t.LEADING)
375. .addGroup(slideMenuLaporanLayout.createSequentialGroup()
376. .addComponent(menuReportGuru,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE)
377.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
378. .addComponent(menuReportSiswa,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE)
379.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
380. .addComponent(menuReportNilai,
javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE)
381. .addGap(2, 2, 2))
382. );
383.
384. form.setBackground(new java.awt.Color(153, 255, 153));
385. form.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
386. form.setForeground(new java.awt.Color(255, 255, 255));
387. form.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
388. form.setText(" Form");
389.
form.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.bord
er.BevelBorder.RAISED));
390. form.setCursor(new
java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
391. form.setOpaque(true);
392. form.addMouseMotionListener(new
java.awt.event.MouseMotionAdapter() {
393. public void mouseMoved(java.awt.event.MouseEvent evt) {
394. formMouseMoved(evt);
395. }
396. });
397. form.addMouseListener(new java.awt.event.MouseAdapter() {
398. public void mouseClicked(java.awt.event.MouseEvent evt) {
399. formMouseClicked(evt);
400. }
401. public void mouseEntered(java.awt.event.MouseEvent evt) {
402. formMouseEntered(evt);
403. }
404. public void mouseExited(java.awt.event.MouseEvent evt) {
405. formMouseExited(evt);
406. }
407. });
408.
409. javax.swing.GroupLayout Panel2Layout = new
javax.swing.GroupLayout(Panel2);
410. Panel2.setLayout(Panel2Layout);
411. Panel2Layout.setHorizontalGroup(
412.
Panel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
413. .addComponent(dashboard,
javax.swing.GroupLayout.DEFAULT_SIZE, 223, Short.MAX_VALUE)
414. .addComponent(transaksi,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
415. .addComponent(slideMenuLaporan,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
416. .addComponent(slideMenuTransaksi,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
417. .addComponent(laporan, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
418. .addComponent(slideMenuForm,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
419. .addComponent(form,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
420. );
421. Panel2Layout.setVerticalGroup(
422.
Panel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
423. .addGroup(Panel2Layout.createSequentialGroup()
424. .addComponent(dashboard,
javax.swing.GroupLayout.PREFERRED_SIZE, 42,
javax.swing.GroupLayout.PREFERRED_SIZE)
425.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
426. .addComponent(form,
javax.swing.GroupLayout.PREFERRED_SIZE, 42,
javax.swing.GroupLayout.PREFERRED_SIZE)
427.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
428. .addComponent(slideMenuForm,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
429.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
430. .addComponent(transaksi,
javax.swing.GroupLayout.PREFERRED_SIZE, 42,
javax.swing.GroupLayout.PREFERRED_SIZE)
431.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
432. .addComponent(slideMenuTransaksi,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
433.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
434. .addComponent(laporan,
javax.swing.GroupLayout.PREFERRED_SIZE, 42,
javax.swing.GroupLayout.PREFERRED_SIZE)
435.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
436. .addComponent(slideMenuLaporan,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
437. .addGap(0, 0, 0))
438. );
439.
440. logout.setBackground(new java.awt.Color(0, 0, 0));
441. logout.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
442. logout.setForeground(new java.awt.Color(255, 255, 255));
443. logout.setText(" Log Out");
444.
logout.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.bo
rder.BevelBorder.RAISED));
445. logout.setOpaque(true);
446. logout.addMouseListener(new java.awt.event.MouseAdapter() {
447. public void mouseClicked(java.awt.event.MouseEvent evt) {
448. logoutMouseClicked(evt);
449. }
450. public void mouseEntered(java.awt.event.MouseEvent evt) {
451. logoutMouseEntered(evt);
452. }
453. public void mouseExited(java.awt.event.MouseEvent evt) {
454. logoutMouseExited(evt);
455. }
456. });
457.
458. javax.swing.GroupLayout MenuLayout = new
javax.swing.GroupLayout(Menu);
459. Menu.setLayout(MenuLayout);
460. MenuLayout.setHorizontalGroup(
461.
MenuLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
462. .addComponent(Panel2, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
463. .addComponent(logout, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
464. );
465. MenuLayout.setVerticalGroup(
466.
MenuLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
467. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
MenuLayout.createSequentialGroup()
468. .addComponent(Panel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
469.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
470. .addComponent(logout,
javax.swing.GroupLayout.PREFERRED_SIZE, 39,
javax.swing.GroupLayout.PREFERRED_SIZE)
471. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
472. );
473.
474. MenuLogo.setBackground(new java.awt.Color(153, 255, 153));
475. MenuLogo.setBorder(new javax.swing.border.LineBorder(new
java.awt.Color(255, 255, 255), 3, true));
476.
477. logo.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
478. logo.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/gambar/logo-tk-berwarna-
belakang-.png"))); // NOI18N
479.
480. judul1.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
481. judul1.setForeground(new java.awt.Color(255, 255, 255));
482. judul1.setText("PENERIMAAN SISWA");
483.
484. judul2.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
485. judul2.setForeground(new java.awt.Color(255, 255, 255));
486. judul2.setText("TK MUNNA");
487.
488. javax.swing.GroupLayout MenuLogoLayout = new
javax.swing.GroupLayout(MenuLogo);
489. MenuLogo.setLayout(MenuLogoLayout);
490. MenuLogoLayout.setHorizontalGroup(
491.
MenuLogoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
492. .addGroup(MenuLogoLayout.createSequentialGroup()
493. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
494.
.addGroup(MenuLogoLayout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
495. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
MenuLogoLayout.createSequentialGroup()
496. .addComponent(logo)
497. .addGap(43, 43, 43))
498. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
MenuLogoLayout.createSequentialGroup()
499. .addComponent(judul1)
500. .addGap(33, 33, 33))))
501. .addGroup(MenuLogoLayout.createSequentialGroup()
502. .addGap(73, 73, 73)
503. .addComponent(judul2)
504. .addGap(0, 0, Short.MAX_VALUE))
505. );
506. MenuLogoLayout.setVerticalGroup(
507.
MenuLogoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
508. .addGroup(MenuLogoLayout.createSequentialGroup()
509. .addComponent(logo,
javax.swing.GroupLayout.PREFERRED_SIZE, 99,
javax.swing.GroupLayout.PREFERRED_SIZE)
510.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
511. .addComponent(judul1)
512.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
513. .addComponent(judul2)
514. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
515. );
516.
517. Pane.setBackground(new java.awt.Color(255, 255, 255));
518. Pane.setMaximumSize(new java.awt.Dimension(1200, 650));
519. Pane.setMinimumSize(new java.awt.Dimension(380, 200));
520. Pane.setPreferredSize(new java.awt.Dimension(600, 570));
521. Pane.setLayout(new java.awt.CardLayout());
522.
523. Panel3.setBackground(new java.awt.Color(255, 71, 71));
524. Panel3.setMinimumSize(new java.awt.Dimension(950, 650));
525.
526. jLabel9.setBackground(new java.awt.Color(153, 255, 153));
527. jLabel9.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
528. jLabel9.setForeground(new java.awt.Color(51, 51, 51));
529. jLabel9.setText(" Dashboard");
530. jLabel9.setBorder(javax.swing.BorderFactory.createMatteBorder(0,
2, 2, 0, new java.awt.Color(51, 51, 51)));
531.
532. jPanel1.setBackground(new java.awt.Color(255, 255, 255));
533. jPanel1.setBorder(new javax.swing.border.LineBorder(new
java.awt.Color(255, 51, 51), 4, true));
534.
535. jLabel15.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/gambar/Gambar
Sekolah.jpg"))); // NOI18N
536.
537. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
538. jPanel1.setLayout(jPanel1Layout);
539. jPanel1Layout.setHorizontalGroup(
540.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
541. .addGroup(jPanel1Layout.createSequentialGroup()
542. .addComponent(jLabel15,
javax.swing.GroupLayout.PREFERRED_SIZE, 431,
javax.swing.GroupLayout.PREFERRED_SIZE)
543. .addGap(0, 0, Short.MAX_VALUE))
544. );
545. jPanel1Layout.setVerticalGroup(
546.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
547. .addGroup(jPanel1Layout.createSequentialGroup()
548. .addComponent(jLabel15,
javax.swing.GroupLayout.PREFERRED_SIZE, 299,
javax.swing.GroupLayout.PREFERRED_SIZE)
549. .addGap(0, 1, Short.MAX_VALUE))
550. );
551.
552. jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 18)); //
NOI18N
553. jLabel1.setText("TK MUNNA");
554.
555. jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 14)); //
NOI18N
556. jLabel2.setText("Jl.Tanjung Barat Selatan No.40 Rt.004 Rw.002
JAKARTA SELATAN");
557.
558. javax.swing.GroupLayout Panel3Layout = new
javax.swing.GroupLayout(Panel3);
559. Panel3.setLayout(Panel3Layout);
560. Panel3Layout.setHorizontalGroup(
561.
Panel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
562. .addGroup(Panel3Layout.createSequentialGroup()
563. .addContainerGap()
564.
.addGroup(Panel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignmen
t.LEADING)
565. .addGroup(Panel3Layout.createSequentialGroup()
566. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
567. .addGap(501, 501, 501))
568. .addGroup(Panel3Layout.createSequentialGroup()
569.
.addGroup(Panel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignmen
t.LEADING)
570. .addComponent(jLabel9,
javax.swing.GroupLayout.PREFERRED_SIZE, 118,
javax.swing.GroupLayout.PREFERRED_SIZE)
571. .addComponent(jLabel1)
572. .addComponent(jLabel2))
573.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
574. );
575. Panel3Layout.setVerticalGroup(
576.
Panel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
577. .addGroup(Panel3Layout.createSequentialGroup()
578. .addContainerGap()
579. .addComponent(jLabel9,
javax.swing.GroupLayout.PREFERRED_SIZE, 33,
javax.swing.GroupLayout.PREFERRED_SIZE)
580. .addGap(18, 18, 18)
581. .addComponent(jLabel1)
582.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
583. .addComponent(jLabel2)
584. .addGap(18, 18, Short.MAX_VALUE)
585. .addComponent(jPanel1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
586. .addContainerGap(237, Short.MAX_VALUE))
587. );
588.
589. Pane.add(Panel3, "card2");
590.
591. javax.swing.GroupLayout PanelDashboardLayout = new
javax.swing.GroupLayout(PanelDashboard);
592. PanelDashboard.setLayout(PanelDashboardLayout);
593. PanelDashboardLayout.setHorizontalGroup(
594.
PanelDashboardLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.
LEADING)
595. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
PanelDashboardLayout.createSequentialGroup()
596. .addContainerGap()
597.
.addGroup(PanelDashboardLayout.createParallelGroup(javax.swing.GroupLayout.
Alignment.LEADING, false)
598. .addComponent(MenuLogo,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
599. .addComponent(Menu,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
600.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
601. .addComponent(Pane, javax.swing.GroupLayout.DEFAULT_SIZE,
835, Short.MAX_VALUE)
602. .addContainerGap())
603. );
604. PanelDashboardLayout.setVerticalGroup(
605.
PanelDashboardLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.
LEADING)
606. .addGroup(PanelDashboardLayout.createSequentialGroup()
607. .addContainerGap()
608.
.addGroup(PanelDashboardLayout.createParallelGroup(javax.swing.GroupLayout.
Alignment.LEADING)
609. .addComponent(Pane,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
610.
.addGroup(PanelDashboardLayout.createSequentialGroup()
611. .addComponent(MenuLogo,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
612.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
613. .addComponent(Menu,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)))
614. .addContainerGap())
615. );
616.
617. setJMenuBar(jMenuBar1);
618.
619. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
620. getContentPane().setLayout(layout);
621. layout.setHorizontalGroup(
622.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
623. .addComponent(PanelDashboard,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
624. );
625. layout.setVerticalGroup(
626.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
627. .addComponent(PanelDashboard,
javax.swing.GroupLayout.DEFAULT_SIZE, 698, Short.MAX_VALUE)
628. );
629.
630. pack();
631. }// </editor-fold>
632.
633. private void logoutMouseClicked(java.awt.event.MouseEvent evt) {
634. // TODO add your handling code here:
635. this.dispose();
636. new login().setVisible(true);
637.
638. }
639.
640. private void formMouseClicked(java.awt.event.MouseEvent evt) {
641. // TODO add your handling code here:
642.
643. showSubMenu(slideMenuForm);
644. }
645.
646. private void dashboardMouseClicked(java.awt.event.MouseEvent evt) {
647. // TODO add your handling code here:
648. //remove panel
649. Pane.removeAll();
650. Pane.repaint();
651. Pane.revalidate();
652.
653. //add Panel, add panel dari Siswa.Java (sebuah panel)
654. Pane.add(Panel3);
655. Pane.repaint();
656. Pane.revalidate();
657. }
658.
659. private void formMouseMoved(java.awt.event.MouseEvent evt) {
660. // TODO add your handling code here:
661.
662. }
663.
664. private void menuGuruMouseClicked(java.awt.event.MouseEvent evt) {
665. // TODO add your handling code here:
666.
667. //remove panel
668. Pane.removeAll();
669. Pane.repaint();
670. Pane.revalidate();
671.
672. //add Panel, add panel dari Guru.Java (sebuah panel)
673. Pane.add(new tk_munna.Orangtuasiswa());
674. Pane.repaint();
675. Pane.revalidate();
676. }
677.
678. private void menuSiswaMouseClicked(java.awt.event.MouseEvent evt) {
679. // TODO add your handling code here:
680.
681. //remove panel
682. Pane.removeAll();
683. Pane.repaint();
684. Pane.revalidate();
685.
686. //add Panel, add panel dari Guru.Java (sebuah panel)
687. Pane.add(new tk_munna.Siswa());
688. Pane.repaint();
689. Pane.revalidate();
690. }
691.
692. private void transaksiMouseClicked(java.awt.event.MouseEvent evt) {
693. // TODO add your handling code here:
694. showSubMenu(slideMenuTransaksi);
695. }
696.
697. private void laporanMouseClicked(java.awt.event.MouseEvent evt) {
698. // TODO add your handling code here:
699. showSubMenu(slideMenuLaporan);
700. }
701.
702. private void formMouseEntered(java.awt.event.MouseEvent evt) {
703. // TODO add your handling code here:
704. form.setBackground(new Color(255,77,77));
705. form.setCursor(new Cursor(Cursor.HAND_CURSOR));
706. }
707.
708. private void formMouseExited(java.awt.event.MouseEvent evt) {
709. // TODO add your handling code here:
710. form.setBackground(hoverButton);
711. }
712.
713. private void transaksiMouseEntered(java.awt.event.MouseEvent evt) {
714. // TODO add your handling code here:
715. transaksi.setBackground(new Color(255,77,77));
716. transaksi.setCursor(new Cursor(Cursor.HAND_CURSOR));
717. }
718.
719. private void transaksiMouseExited(java.awt.event.MouseEvent evt) {
720. // TODO add your handling code here:
721. transaksi.setBackground(hoverButton);
722. }
723.
724. private void laporanMouseEntered(java.awt.event.MouseEvent evt) {
725. // TODO add your handling code here:
726. laporan.setBackground(new Color(255,77,77));
727. laporan.setCursor(new Cursor(Cursor.HAND_CURSOR));
728. }
729.
730. private void laporanMouseExited(java.awt.event.MouseEvent evt) {
731. // TODO add your handling code here:
732. laporan.setBackground(hoverButton);
733. }
734.
735. private void dashboardMouseEntered(java.awt.event.MouseEvent evt) {
736. // TODO add your handling code here:
737. dashboard.setBackground(new Color(255,77,77));
738. dashboard.setCursor(new Cursor(Cursor.HAND_CURSOR));
739. }
740.
741. private void dashboardMouseExited(java.awt.event.MouseEvent evt) {
742. // TODO add your handling code here:
743. dashboard.setBackground(hoverButton);
744. }
745.
746. private void logoutMouseEntered(java.awt.event.MouseEvent evt) {
747. // TODO add your handling code here:
748. logout.setBackground(new Color(255,77,77));
749. logout.setCursor(new Cursor(Cursor.HAND_CURSOR));
750. }
751.
752. private void logoutMouseExited(java.awt.event.MouseEvent evt) {
753. // TODO add your handling code here:
754. logout.setBackground(Color.BLACK);
755. }
756.
757. private void menuGuruMouseEntered(java.awt.event.MouseEvent evt) {
758. // TODO add your handling code here:
759. menuGuru.setBackground(new Color(255,51,51));
760. menuGuru.setCursor(new Cursor(Cursor.HAND_CURSOR));
761. }
762.
763. private void menuGuruMouseExited(java.awt.event.MouseEvent evt) {
764. // TODO add your handling code here:
765. menuGuru.setBackground(Color.WHITE);
766. }
767.
768. private void menuSiswaMouseEntered(java.awt.event.MouseEvent evt) {
769. // TODO add your handling code here:
770. menuSiswa.setBackground(new Color(255,51,51));
771. menuSiswa.setCursor(new Cursor(Cursor.HAND_CURSOR));
772. }
773.
774. private void menuSiswaMouseExited(java.awt.event.MouseEvent evt) {
775. // TODO add your handling code here:
776. menuSiswa.setBackground(Color.WHITE);
777. }
778.
779. private void menuNilaiMouseClicked(java.awt.event.MouseEvent evt) {
780. // TODO add your handling code here:
781. //remove panel
782. Pane.removeAll();
783. Pane.repaint();
784. Pane.revalidate();
785.
786. //add Panel, add panel dari Guru.Java (sebuah panel)
787. Pane.add(new Seleksi.Nilai());
788. Pane.repaint();
789. Pane.revalidate();
790. }
791.
792. private void menuNilaiMouseEntered(java.awt.event.MouseEvent evt) {
793. // TODO add your handling code here:
794. menuNilai.setBackground(new Color(255,51,51));
795. menuNilai.setCursor(new Cursor(Cursor.HAND_CURSOR));
796. }
797.
798. private void menuNilaiMouseExited(java.awt.event.MouseEvent evt) {
799. // TODO add your handling code here:
800. menuNilai.setBackground(Color.WHITE);
801. }
802.
803. private void menuReportGuruMouseClicked(java.awt.event.MouseEvent
evt) {
804. // TODO add your handling code here:
805. try{
806. String namaFile = "src/Laporan/Laporan_Wali_murid.jasper";
807. HashMap parameter = new HashMap();
808. File report_file = new File(namaFile);
809. JasperReport jasperReport = (JasperReport)
JRLoader.loadObject(report_file.getPath());
810. JasperPrint jasperPrint =
JasperFillManager.fillReport(jasperReport, parameter, conn);
811. JasperViewer.viewReport(jasperPrint, false);
812. JasperViewer.setDefaultLookAndFeelDecorated(true);
813. }catch (Exception e){
814. JOptionPane.showMessageDialog(null, e.getMessage());
815. }
816. }
817.
818. private void menuReportGuruMouseEntered(java.awt.event.MouseEvent
evt) {
819. // TODO add your handling code here:
820. menuReportGuru.setBackground(new Color(255,51,51));
821. menuReportGuru.setCursor(new Cursor(Cursor.HAND_CURSOR));
822. }
823.
824. private void menuReportGuruMouseExited(java.awt.event.MouseEvent evt)
{
825. // TODO add your handling code here:
826. menuReportGuru.setBackground(Color.WHITE);
827. }
828.
829. private void menuReportSiswaMouseClicked(java.awt.event.MouseEvent
evt) {
830. // TODO add your handling code here:
831. try{
832. String namaFile = "src/Laporan/Laporan_Data_Siswa.jasper";
833. HashMap parameter = new HashMap();
834. File report_file = new File(namaFile);
835. JasperReport jasperReport = (JasperReport)
JRLoader.loadObject(report_file.getPath());
836. JasperPrint jasperPrint =
JasperFillManager.fillReport(jasperReport, parameter, conn);
837. JasperViewer.viewReport(jasperPrint, false);
838. JasperViewer.setDefaultLookAndFeelDecorated(true);
839. }catch (Exception e){
840. JOptionPane.showMessageDialog(null, e.getMessage());
841. }
842. }
843.
844. private void menuReportSiswaMouseEntered(java.awt.event.MouseEvent
evt) {
845. // TODO add your handling code here:
846. menuReportSiswa.setBackground(new Color(255,51,51));
847. menuReportSiswa.setCursor(new Cursor(Cursor.HAND_CURSOR));
848. }
849.
850. private void menuReportSiswaMouseExited(java.awt.event.MouseEvent
evt) {
851. // TODO add your handling code here:
852. menuReportSiswa.setBackground(Color.WHITE);
853. }
854.
855. private void menuReportNilaiMouseClicked(java.awt.event.MouseEvent
evt) {
856. // TODO add your handling code here:
857. try{
858. String namaFile = "src/Laporan/Laporan_Hasil_Seleksi.jasper";
859. HashMap parameter = new HashMap();
860. File report_file = new File(namaFile);
861. JasperReport jasperReport = (JasperReport)
JRLoader.loadObject(report_file.getPath());
862. JasperPrint jasperPrint =
JasperFillManager.fillReport(jasperReport, parameter, conn);
863. JasperViewer.viewReport(jasperPrint, false);
864. JasperViewer.setDefaultLookAndFeelDecorated(true);
865. }catch (Exception e){
866. JOptionPane.showMessageDialog(null, e.getMessage());
867. }
868. }
869.
870. private void menuReportNilaiMouseEntered(java.awt.event.MouseEvent
evt) {
871. // TODO add your handling code here:
872. menuReportNilai.setBackground(new Color(255,51,51));
873. menuReportNilai.setCursor(new Cursor(Cursor.HAND_CURSOR));
874. }
875.
876. private void menuReportNilaiMouseExited(java.awt.event.MouseEvent
evt) {
877. // TODO add your handling code here:
878. menuReportNilai.setBackground(Color.WHITE);
879. }
880.
881.
882.
883. /**
884. * @param args the command line arguments
885. */
886. public static void main(String args[]) {
887. /* Set the Nimbus look and feel */
888. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
889. /* If Nimbus (introduced in Java SE 6) is not available, stay
with the default look and feel.
890. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
891. */
892. try {
893. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
894. if ("Nimbus".equals(info.getName())) {
895.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
896. break;
897. }
898. }
899. } catch (ClassNotFoundException ex) {
900.
java.util.logging.Logger.getLogger(MenuUtama.class.getName()).log(java.util
.logging.Level.SEVERE, null, ex);
901. } catch (InstantiationException ex) {
902.
java.util.logging.Logger.getLogger(MenuUtama.class.getName()).log(java.util
.logging.Level.SEVERE, null, ex);
903. } catch (IllegalAccessException ex) {
904.
java.util.logging.Logger.getLogger(MenuUtama.class.getName()).log(java.util
.logging.Level.SEVERE, null, ex);
905. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
906.
java.util.logging.Logger.getLogger(MenuUtama.class.getName()).log(java.util
.logging.Level.SEVERE, null, ex);
907. }
908. //</editor-fold>
909. //</editor-fold>
910. //</editor-fold>
911. //</editor-fold>
912.
913. /* Create and display the form */
914. java.awt.EventQueue.invokeLater(new Runnable() {
915. public void run() {
916. new MenuUtama().setVisible(true);
917. }
918. });
919. }
920.
921. // Variables declaration - do not modify
922. private javax.swing.JPanel Menu;
923. private javax.swing.JPanel MenuLogo;
924. private javax.swing.JPanel Pane;
925. private javax.swing.JPanel Panel2;
926. private javax.swing.JPanel Panel3;
927. private javax.swing.JPanel PanelDashboard;
928. private javax.swing.JLabel dashboard;
929. private javax.swing.JLabel form;
930. private javax.swing.JLabel jLabel1;
931. private javax.swing.JLabel jLabel15;
932. private javax.swing.JLabel jLabel2;
933. private javax.swing.JLabel jLabel9;
934. private javax.swing.JMenuBar jMenuBar1;
935. private javax.swing.JPanel jPanel1;
936. private javax.swing.JLabel judul1;
937. private javax.swing.JLabel judul2;
938. private javax.swing.JLabel laporan;
939. private javax.swing.JLabel logo;
940. private javax.swing.JLabel logout;
941. private javax.swing.JLabel menuGuru;
942. private javax.swing.JLabel menuNilai;
943. private javax.swing.JLabel menuReportGuru;
944. private javax.swing.JLabel menuReportNilai;
945. private javax.swing.JLabel menuReportSiswa;
946. private javax.swing.JLabel menuSiswa;
947. private javax.swing.JPanel slideMenuForm;
948. private javax.swing.JPanel slideMenuLaporan;
949. private javax.swing.JPanel slideMenuTransaksi;
950. private javax.swing.JLabel transaksi;
951. // End of variables declaration
952. }
953.

C. Orangtuasiswa

1. /*
2. * To change this license header, choose License Headers in
Project Properties.
3. * To change this template file, choose Tools | Templates
4. * and open the template in the editor.
5. */
6. package tk_munna;
7.
8. import java.SQL.*;
9. import javax.swing.JOptionPane;
10. import javax.swing.table.DefaultTableModel;
11. import koneksi.koneksi;
12.
13.
14. /**
15. *
16. * @author 002
17. */
18. public class Orangtuasiswa extends javax.swing.JPanel {
19. public String no_pendaftarA, namalengkapA, tempatlahirA,
tanggallahirA, jeniskelaminA, agamaA,
berat_badanA,tinggi_badanA;
20. /**
21. * Creates new form Guru
22. */
23. private Connection conn = new koneksi().connect();
24. private DefaultTableModel tabmode;
25.
26.
27. protected void kosong(){
28. tNoPendaftar.setText("");
29. tNamaLengkap.setText("");
30. rbLaki.setSelected(false);
31. rbPerempuan.setSelected(false);
32. bgJenisKel.clearSelection();
33. tNamaAyah.setText("");
34. tPendidikanAyah.setText("");
35. tPekerjaanAyah.setText("");
36. tNamaIbu.setText("");
37. tPendidikanIbu.setText("");
38. tPekerjaanIbu.setText("");
39. tAlamat.setText("");
40. tCari.setText("");
41. }
42.
43. public void PilihSiswa () {
44. popup_siswa pps = new popup_siswa();
45. pps.datasiswabaru = this;
46. tNoPendaftar.setText(no_pendaftarA);
47. tNamaLengkap.setText(namalengkapA);
48. if(jeniskelaminA.equals("Laki-Laki")){
49. rbLaki.setSelected(true);
50. rbPerempuan.setSelected(false);
51. }else{
52. rbLaki.setSelected(false);
53. rbPerempuan.setSelected(true);
54. }
55. }
56. protected void datatable(){
57. Object[] Baris = {"No Pendaftaran","Nama
Lengkap","Jenis Kelamin","Nama Ayah","Pendidikan
Ayah","Pekerjaan Ayah","Nama Ibu","Pendidikan Ibu","Pekerjaan
Ibu","Alamat OrangTua"};
58. tabmode = new DefaultTableModel(null, Baris);
59. tableGuru.setModel(tabmode);
60.
61. String SQL = "SELECT * FROM datasiswadanorangtua";
62.
63. try{
64. java.SQL.Statement stat = conn.createStatement();
65. ResultSet hasil = stat.executeQuery(SQL);
66. while(hasil.next()){
67. String a = hasil.getString("no_pendaftar");
68. String b = hasil.getString("namalengkap");
69. String c = hasil.getString("jeniskelamin");
70. String d = hasil.getString("namaayah");
71. String e = hasil.getString("pendidikanayah");
72. String f = hasil.getString("pekerjaanayah");
73. String g = hasil.getString("namaibu");
74. String h = hasil.getString("pendidikanibu");
75. String i = hasil.getString("pekerjaanibu");
76. String j = hasil.getString("alamat");
77. String[] data={a, b, c, d, e, f, g, h, i, j};
78. tabmode.addRow(data);
79. }
80. }catch(SQLException e){
81. JOptionPane.showMessageDialog(null,e);
82. }
83. }
84.
85. public Orangtuasiswa() {
86. initComponents();
87. datatable();
88. }
89.
90. /**
91. * This method is called from within the constructor to
initialize the form.
92. * WARNING: Do NOT modify this code. The content of this
method is always
93. * regenerated by the Form Editor.
94. */
95. @SuppressWarnings("unchecked")
96. // <editor-fold defaultstate="collapsed" desc="Generated
Code">
97. private void initComponents() {
98.
99. bgJenisKel = new javax.swing.ButtonGroup();
100. jLabel1 = new javax.swing.JLabel();
101. jPanel2 = new javax.swing.JPanel();
102. tCari = new javax.swing.JTextField();
103. bCari = new javax.swing.JButton();
104. JScrollPane1 = new javax.swing.JScrollPane();
105. tableGuru = new javax.swing.JTable();
106. jPanel1 = new javax.swing.JPanel();
107. nip = new javax.swing.JLabel();
108. bSimpan = new javax.swing.JButton();
109. tNamaIbu = new javax.swing.JTextField();
110. bHapus = new javax.swing.JButton();
111. jenisKel = new javax.swing.JLabel();
112. tmpLahir = new javax.swing.JLabel();
113. rbPerempuan = new javax.swing.JRadioButton();
114. bEdit = new javax.swing.JButton();
115. rbLaki = new javax.swing.JRadioButton();
116. namaGuru = new javax.swing.JLabel();
117. noTelp = new javax.swing.JLabel();
118. alamat = new javax.swing.JLabel();
119. tPekerjaanAyah = new javax.swing.JTextField();
120. bClear = new javax.swing.JButton();
121. tglLahir = new javax.swing.JLabel();
122. tPendidikanAyah = new javax.swing.JTextField();
123. tNoPendaftar = new javax.swing.JTextField();
124. tNamaLengkap = new javax.swing.JTextField();
125. tPendidikanIbu = new javax.swing.JTextField();
126. email = new javax.swing.JLabel();
127. jButton1 = new javax.swing.JButton();
128. tNamaAyah = new javax.swing.JTextField();
129. tmpLahir1 = new javax.swing.JLabel();
130. tPekerjaanIbu = new javax.swing.JTextField();
131. jLabel2 = new javax.swing.JLabel();
132. jScrollPane1 = new javax.swing.JScrollPane();
133. tAlamat = new javax.swing.JTextArea();
134.
135. setBackground(new java.awt.Color(255, 71, 71));
136. setPreferredSize(new java.awt.Dimension(1135,
590));
137.
138. jLabel1.setBackground(new java.awt.Color(255,
255, 255));
139. jLabel1.setFont(new java.awt.Font("Tahoma", 1,
14)); // NOI18N
140.
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
141. jLabel1.setText("Data Siswa dan Orang Tua");
142. jLabel1.setOpaque(true);
143.
144.
jPanel2.setBorder(javax.swing.BorderFactory.createLineBorder(ne
w java.awt.Color(0, 0, 0)));
145.
146. tCari.setName(""); // NOI18N
147. tCari.addActionListener(new
java.awt.event.ActionListener() {
148. public void
actionPerformed(java.awt.event.ActionEvent evt) {
149. tCariActionPerformed(evt);
150. }
151. });
152.
153. bCari.setText("Cari");
154. bCari.addActionListener(new
java.awt.event.ActionListener() {
155. public void
actionPerformed(java.awt.event.ActionEvent evt) {
156. bCariActionPerformed(evt);
157. }
158. });
159.
160. tableGuru.setModel(new
javax.swing.table.DefaultTableModel(
161. new Object [][] {
162. {null, null, null, null, null, null,
null, null, null, null},
163. {null, null, null, null, null, null,
null, null, null, null},
164. {null, null, null, null, null, null,
null, null, null, null},
165. {null, null, null, null, null, null,
null, null, null, null},
166. {null, null, null, null, null, null,
null, null, null, null},
167. {null, null, null, null, null, null,
null, null, null, null},
168. {null, null, null, null, null, null,
null, null, null, null},
169. {null, null, null, null, null, null,
null, null, null, null}
170. },
171. new String [] {
172. "No Pendaftaran", "Nama Lengkap", "Jenis
Kelamin", "Nama Ayah", "Pendidikan Ayah", "Pekerjaan Ayah",
"Nama Ibu", "Pekerjaan Ibu", "Pendidikan Ibu", "Alamat
OrangTua"
173. }
174. ));
175. tableGuru.addMouseListener(new
java.awt.event.MouseAdapter() {
176. public void
mouseClicked(java.awt.event.MouseEvent evt) {
177. tableGuruMouseClicked(evt);
178. }
179. });
180. JScrollPane1.setViewportView(tableGuru);
181.
182. javax.swing.GroupLayout jPanel2Layout = new
javax.swing.GroupLayout(jPanel2);
183. jPanel2.setLayout(jPanel2Layout);
184. jPanel2Layout.setHorizontalGroup(
185.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Align
ment.LEADING)
186.
.addGroup(jPanel2Layout.createSequentialGroup()
187. .addContainerGap()
188.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING)
189. .addComponent(JScrollPane1)
190.
.addGroup(jPanel2Layout.createSequentialGroup()
191. .addComponent(bCari,
javax.swing.GroupLayout.PREFERRED_SIZE, 154,
javax.swing.GroupLayout.PREFERRED_SIZE)
192. .addGap(37, 37, 37)
193. .addComponent(tCari,
javax.swing.GroupLayout.PREFERRED_SIZE, 546,
javax.swing.GroupLayout.PREFERRED_SIZE)
194. .addGap(0, 384,
Short.MAX_VALUE)))
195. .addContainerGap())
196. );
197. jPanel2Layout.setVerticalGroup(
198.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Align
ment.LEADING)
199.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel2Layout.createSequentialGroup()
200. .addContainerGap()
201.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
202. .addComponent(tCari,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
203. .addComponent(bCari))
204.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
205. .addComponent(JScrollPane1,
javax.swing.GroupLayout.DEFAULT_SIZE, 112, Short.MAX_VALUE)
206. .addGap(17, 17, 17))
207. );
208.
209. jPanel1.setBackground(new java.awt.Color(255,
255, 255));
210.
211. nip.setText("No.Pendaftar");
212.
213. bSimpan.setText("Simpan");
214. bSimpan.addActionListener(new
java.awt.event.ActionListener() {
215. public void
actionPerformed(java.awt.event.ActionEvent evt) {
216. bSimpanActionPerformed(evt);
217. }
218. });
219.
220. bHapus.setText("Hapus");
221. bHapus.addActionListener(new
java.awt.event.ActionListener() {
222. public void
actionPerformed(java.awt.event.ActionEvent evt) {
223. bHapusActionPerformed(evt);
224. }
225. });
226.
227. jenisKel.setText("Jenis Kelamin");
228.
229. tmpLahir.setText("Pendidikan Ibu");
230.
231. bgJenisKel.add(rbPerempuan);
232. rbPerempuan.setText("Perempuan");
233.
234. bEdit.setText("Edit");
235. bEdit.addMouseListener(new
java.awt.event.MouseAdapter() {
236. public void
mouseClicked(java.awt.event.MouseEvent evt) {
237. bEditMouseClicked(evt);
238. }
239. });
240. bEdit.addActionListener(new
java.awt.event.ActionListener() {
241. public void
actionPerformed(java.awt.event.ActionEvent evt) {
242. bEditActionPerformed(evt);
243. }
244. });
245.
246. bgJenisKel.add(rbLaki);
247. rbLaki.setText("Laki-Laki");
248.
249. namaGuru.setText("Nama Lengkap");
250.
251. noTelp.setText("Pendidikan Ayah");
252.
253. alamat.setText("Nama Ayah");
254.
255. bClear.setText("Clear");
256. bClear.addActionListener(new
java.awt.event.ActionListener() {
257. public void
actionPerformed(java.awt.event.ActionEvent evt) {
258. bClearActionPerformed(evt);
259. }
260. });
261.
262. tglLahir.setText("Nama Ibu");
263.
264. email.setText("Pekerjaan Ayah");
265.
266. jButton1.setText("Cari Siswa");
267. jButton1.addActionListener(new
java.awt.event.ActionListener() {
268. public void
actionPerformed(java.awt.event.ActionEvent evt) {
269. jButton1ActionPerformed(evt);
270. }
271. });
272.
273. tmpLahir1.setText("Pekerjaan Ibu");
274.
275. jLabel2.setText("Alamat Orang Tua");
276.
277. tAlamat.setColumns(20);
278. tAlamat.setRows(5);
279. jScrollPane1.setViewportView(tAlamat);
280.
281. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
282. jPanel1.setLayout(jPanel1Layout);
283. jPanel1Layout.setHorizontalGroup(
284.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Align
ment.LEADING)
285.
.addGroup(jPanel1Layout.createSequentialGroup()
286. .addContainerGap()
287.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING)
288.
.addGroup(jPanel1Layout.createSequentialGroup()
289.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.TRAILING, false)
290.
.addGroup(jPanel1Layout.createSequentialGroup()
291.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING, false)
292.
.addComponent(namaGuru, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
293.
.addComponent(jenisKel)
294. .addComponent(nip,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
295.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.REL
ATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
296. .addComponent(jButton1))
297.
.addGroup(jPanel1Layout.createSequentialGroup()
298. .addComponent(jLabel2)
299.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
300. .addComponent(bSimpan)
301. .addGap(115, 115, 115)
302. .addComponent(bHapus)
303.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.REL
ATED, 96, Short.MAX_VALUE)
304. .addComponent(bEdit)))
305. .addGap(77, 77, 77)
306. .addComponent(bClear))
307.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.TRAILING)
308. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 277,
javax.swing.GroupLayout.PREFERRED_SIZE)
309.
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Align
ment.TRAILING, false)
310.
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel1Layout.createSequentialGroup()
311. .addComponent(tmpLahir1)
312.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.REL
ATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
313.
.addComponent(tPekerjaanIbu,
javax.swing.GroupLayout.PREFERRED_SIZE, 278,
javax.swing.GroupLayout.PREFERRED_SIZE))
314.
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Align
ment.TRAILING)
315.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.TRAILING)
316.
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel1Layout.createSequentialGroup()
317.
.addComponent(noTelp)
318. .addGap(18, 18,
18)
319.
.addComponent(tPendidikanAyah,
javax.swing.GroupLayout.PREFERRED_SIZE, 278,
javax.swing.GroupLayout.PREFERRED_SIZE))
320.
.addComponent(tmpLahir,
javax.swing.GroupLayout.Alignment.LEADING)
321.
.addComponent(alamat,
javax.swing.GroupLayout.Alignment.LEADING)
322.
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel1Layout.createSequentialGroup()
323.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING)
324.
.addComponent(email)
325.
.addComponent(tglLahir))
326. .addGap(26, 26,
26)
327.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING, false)
328.
.addComponent(tNamaIbu,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE, 278,
javax.swing.GroupLayout.PREFERRED_SIZE)
329.
.addComponent(tNamaAyah,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE, 278,
javax.swing.GroupLayout.PREFERRED_SIZE)
330.
.addComponent(tPekerjaanAyah,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE, 278,
javax.swing.GroupLayout.PREFERRED_SIZE)
331.
.addComponent(tPendidikanIbu,
javax.swing.GroupLayout.PREFERRED_SIZE, 278,
javax.swing.GroupLayout.PREFERRED_SIZE))))
332.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING)
333.
.addComponent(tNoPendaftar,
javax.swing.GroupLayout.PREFERRED_SIZE, 278,
javax.swing.GroupLayout.PREFERRED_SIZE)
334.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING, false)
335.
.addComponent(tNamaLengkap,
javax.swing.GroupLayout.PREFERRED_SIZE, 278,
javax.swing.GroupLayout.PREFERRED_SIZE)
336.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
337.
.addComponent(rbLaki)
338. .addGap(45,
45, 45)
339.
.addComponent(rbPerempuan)
340. .addGap(79,
79, 79))))))))
341. .addContainerGap(480, Short.MAX_VALUE))
342. );
343. jPanel1Layout.setVerticalGroup(
344.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Align
ment.LEADING)
345.
.addGroup(jPanel1Layout.createSequentialGroup()
346. .addContainerGap()
347.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
348. .addComponent(nip)
349. .addComponent(jButton1)
350. .addComponent(tNoPendaftar,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
351.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
352.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
353. .addComponent(namaGuru,
javax.swing.GroupLayout.PREFERRED_SIZE, 24,
javax.swing.GroupLayout.PREFERRED_SIZE)
354. .addComponent(tNamaLengkap,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
355. .addGap(18, 18, 18)
356.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
357. .addComponent(jenisKel)
358. .addComponent(rbLaki)
359. .addComponent(rbPerempuan))
360. .addGap(18, 18, 18)
361.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
362. .addComponent(alamat)
363. .addComponent(tNamaAyah,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
364.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
365.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
366. .addComponent(noTelp)
367. .addComponent(tPendidikanAyah,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
368. .addGap(14, 14, 14)
369.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
370. .addComponent(tPekerjaanAyah,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
371. .addComponent(email))
372.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
373.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
374. .addComponent(tglLahir)
375. .addComponent(tNamaIbu,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
376.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
377.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
378. .addComponent(tmpLahir)
379. .addComponent(tPendidikanIbu,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
380.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
381.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
382. .addComponent(tmpLahir1)
383. .addComponent(tPekerjaanIbu,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
384.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
385.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.LEADING)
386. .addComponent(jLabel2)
387.
.addGroup(jPanel1Layout.createSequentialGroup()
388. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 51,
javax.swing.GroupLayout.PREFERRED_SIZE)
389. .addGap(18, 18, 18)
390.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.BASELINE)
391. .addComponent(bSimpan)
392. .addComponent(bHapus)
393. .addComponent(bEdit)
394. .addComponent(bClear))))
395.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
396. );
397.
398. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(this);
399. this.setLayout(layout);
400. layout.setHorizontalGroup(
401.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
402. .addComponent(jPanel2,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
403. .addGroup(layout.createSequentialGroup()
404. .addContainerGap()
405.
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Al
ignment.LEADING)
406. .addComponent(jLabel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
407.
.addGroup(layout.createSequentialGroup()
408. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
409. .addContainerGap())))
410. );
411. layout.setVerticalGroup(
412.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE
ADING)
413. .addGroup(layout.createSequentialGroup()
414. .addContainerGap()
415. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 33,
javax.swing.GroupLayout.PREFERRED_SIZE)
416. .addGap(18, 18, 18)
417. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
418.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.REL
ATED)
419. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
420. );
421. }// </editor-fold>
422.
423. private void
bCariActionPerformed(java.awt.event.ActionEvent evt) {
424. // TODO add your handling code here:
425. Object[] Baris = {"No Pendaftaran","Nama
Lengkap","Jenis Kelamin","Nama Ayah","Pendidikan
Ayah","Pekerjaan Ayah","Nama Ibu","Pendidikan Ibu","Pekerjaan
Ibu","Alamat OrangTua"};
426. tabmode = new DefaultTableModel(null, Baris);
427. tableGuru.setModel(tabmode);
428.
429. String SQL = "SELECT * FROM datasiswadanorangtua
WHERE namalengkap LIKE '%"+tCari.getText()+"%'";
430. try{
431. java.SQL.Statement stat =
conn.createStatement();
432. ResultSet hasil = stat.executeQuery(SQL);
433. while(hasil.next()){
434. String a =
hasil.getString("no_pendaftar");
435. String b =
hasil.getString("namalengkap");
436. String c =
hasil.getString("jeniskelamin");
437. String d = hasil.getString("namaayah");
438. String e =
hasil.getString("pendidikanayah");
439. String f =
hasil.getString("pekerjaanayah");
440. String g = hasil.getString("namaibu");
441. String h =
hasil.getString("pendidikanibu");
442. String i =
hasil.getString("pekerjaanibu");
443. String j = hasil.getString("alamat");
444.
445. String[] data={a, b, c, d, e, f, g, h,
i, j};
446. tabmode.addRow(data);
447. }
448. }catch(SQLException e){
449. JOptionPane.showMessageDialog(null,e);
450. }
451. kosong();
452. }
453.
454. private void
tableGuruMouseClicked(java.awt.event.MouseEvent evt) {
455. // TODO add your handling code here:
456. int bar = tableGuru.getSelectedRow();
457. String a = tabmode.getValueAt(bar,
0).toString();
458. String b = tabmode.getValueAt(bar,
1).toString();
459. String c = tabmode.getValueAt(bar,
2).toString();
460. String d = tabmode.getValueAt(bar,
3).toString();
461. String e = tabmode.getValueAt(bar,
4).toString();
462. String f = tabmode.getValueAt(bar,
5).toString();
463. String g = tabmode.getValueAt(bar,
6).toString();
464. String h = tabmode.getValueAt(bar,
7).toString();
465. String i = tabmode.getValueAt(bar,
8).toString();
466. String j = tabmode.getValueAt(bar,
9).toString();
467.
468. tNoPendaftar.setText(a);
469. tNamaLengkap.setText(b);
470. if(f.equals("Laki-Laki")){
471. rbLaki.setSelected(true);
472. rbPerempuan.setSelected(false);
473. }else{
474. rbLaki.setSelected(false);
475. rbPerempuan.setSelected(true);
476. }
477. tNamaAyah.setText(d);
478. tPendidikanAyah.setText(e);
479. tPekerjaanAyah.setText(f);
480. tNamaIbu.setText(g);
481. tPendidikanIbu.setText(h);
482. tPekerjaanIbu.setText(i);
483. tAlamat.setText(e);
484. }
485.
486. private void
bSimpanActionPerformed(java.awt.event.ActionEvent evt) {
487. // TODO add your handling code here:
488. String SQL = "INSERT INTO datasiswadanorangtua
VALUES (?,?,?,?,?,?,?,?,?,?)";
489. try{
490. PreparedStatement stat =
conn.prepareStatement(SQL);
491.
492. stat.setString(1, tNoPendaftar.getText());
493. stat.setString(2, tNamaLengkap.getText());
494. String jkel = "";
495. if(rbLaki.isSelected()){
496. jkel="Laki-Laki";
497. }else{
498. jkel="Perempuan";
499. }
500.
501. stat.setString(3, jkel);
502. stat.setString(4, tNamaAyah.getText());
503. stat.setString(5,
tPendidikanAyah.getText());
504. stat.setString(6, tPekerjaanAyah.getText());
505. stat.setString(7, tNamaIbu.getText());
506. stat.setString(8, tPendidikanIbu.getText());
507. stat.setString(9, tPekerjaanIbu.getText());
508. stat.setString(10, tAlamat.getText());
509.
510.
511. stat.executeUpdate();
512. JOptionPane.showMessageDialog(null, "DATA
Berhasil Disimpan");
513. kosong();
514. tNoPendaftar.requestFocus();
515. datatable();
516. }catch (SQLException e){
517. JOptionPane.showMessageDialog(null, "Data
Gagal Disimpan "+e);
518. }
519. }
520.
521. private void
bEditActionPerformed(java.awt.event.ActionEvent evt) {
522. // TODO add your handling code here:
523. try{
524. String SQL = "UPDATE datasiswadanorangtua
SET namalengkap=?, jeniskelamin=?, namaayah=?,
pendidikanayah=?, pekerjaanayah=?, namaibu=?, pendidikanibu=?,
pekerjaanibu=?, alamat=? WHERE no_pendaftar=?";
525. PreparedStatement stat =
conn.prepareStatement(SQL);
526. stat.setString(10, tNoPendaftar.getText());
527. stat.setString(1, tNamaLengkap.getText());
528. String jkel = "";
529. if(rbLaki.isSelected()){
530. jkel="Laki-Laki";
531. }else{
532. jkel="Perempuan";
533. }
534.
535. stat.setString(2, jkel);
536. stat.setString(3, tNamaAyah.getText());
537. stat.setString(4,
tPendidikanAyah.getText());
538. stat.setString(5, tPekerjaanAyah.getText());
539. stat.setString(6, tNamaIbu.getText());
540. stat.setString(7, tPendidikanIbu.getText());
541. stat.setString(8, tPekerjaanIbu.getText());
542. stat.setString(9, tAlamat.getText());
543.
544. stat.executeUpdate();
545. JOptionPane.showMessageDialog(null, "Data
Berhasil diUbah ");
546. kosong();
547. tNamaLengkap.requestFocus();
548. datatable();
549. }catch(SQLException e){
550. JOptionPane.showMessageDialog(null,"Data
Gagal DiUbah " + e);
551. }
552. }
553.
554. private void
bHapusActionPerformed(java.awt.event.ActionEvent evt) {
555. // TODO add your handling code here:
556. int ok =
JOptionPane.showConfirmDialog(null,"hapus","Konfirmasi
Dialog",JOptionPane.YES_NO_CANCEL_OPTION);
557. if(ok == 0){
558. String SQL = "DELETE FROM
datasiswadanorangtua WHERE
no_pendaftar='"+tNoPendaftar.getText()+"'";
559. try{
560. PreparedStatement stat =
conn.prepareStatement(SQL);
561.
562. stat.executeUpdate();
563. JOptionPane.showMessageDialog(null,
"Data Berhasil diUbah ");
564. kosong();
565. tNoPendaftar.requestFocus();
566. datatable();
567. }catch(SQLException e){
568. JOptionPane.showMessageDialog(null,"Data
Gagal DiUbah " + e);
569. }
570. }
571. }
572.
573. private void
bClearActionPerformed(java.awt.event.ActionEvent evt) {
574. // TODO add your handling code here:
575. kosong();
576. datatable();
577. }
578.
579. private void
jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
580. popup_siswa pps = new popup_siswa();
581. pps.datasiswabaru = this;
582. pps.setVisible(true);
583. pps.setResizable(false);
584. }
585.
586. private void
tCariActionPerformed(java.awt.event.ActionEvent evt) {
587. // TODO add your handling code here:
588. }
589.
590. private void
bEditMouseClicked(java.awt.event.MouseEvent evt) {
591. // TODO add your handling code here:
592. }
593.
594.
595. // Variables declaration - do not modify
596. private javax.swing.JScrollPane JScrollPane1;
597. private javax.swing.JLabel alamat;
598. private javax.swing.JButton bCari;
599. private javax.swing.JButton bClear;
600. private javax.swing.JButton bEdit;
601. private javax.swing.JButton bHapus;
602. private javax.swing.JButton bSimpan;
603. private javax.swing.ButtonGroup bgJenisKel;
604. private javax.swing.JLabel email;
605. private javax.swing.JButton jButton1;
606. private javax.swing.JLabel jLabel1;
607. private javax.swing.JLabel jLabel2;
608. private javax.swing.JPanel jPanel1;
609. private javax.swing.JPanel jPanel2;
610. private javax.swing.JScrollPane jScrollPane1;
611. private javax.swing.JLabel jenisKel;
612. private javax.swing.JLabel namaGuru;
613. private javax.swing.JLabel nip;
614. private javax.swing.JLabel noTelp;
615. private javax.swing.JRadioButton rbLaki;
616. private javax.swing.JRadioButton rbPerempuan;
617. private javax.swing.JTextArea tAlamat;
618. private javax.swing.JTextField tCari;
619. private javax.swing.JTextField tNamaAyah;
620. private javax.swing.JTextField tNamaIbu;
621. private javax.swing.JTextField tNamaLengkap;
622. private javax.swing.JTextField tNoPendaftar;
623. private javax.swing.JTextField tPekerjaanAyah;
624. private javax.swing.JTextField tPekerjaanIbu;
625. private javax.swing.JTextField tPendidikanAyah;
626. private javax.swing.JTextField tPendidikanIbu;
627. private javax.swing.JTable tableGuru;
628. private javax.swing.JLabel tglLahir;
629. private javax.swing.JLabel tmpLahir;
630. private javax.swing.JLabel tmpLahir1;
631. // End of variables declaration
632. }
633.

D. Siswa

1. /*
2. * To change this license header, choose License Headers in
Project Properties.
3. * To change this template file, choose Tools | Templates
4. * and open the template in the editor.
5. */
6. package tk_munna;
7.
8. //import Form.*;
9. import java.SQL.*;
10. import javax.swing.JOptionPane;
11. import javax.swing.table.DefaultTableModel;
12. import koneksi.koneksi;
13. /**
14. *
15. * @author 002
16. */
17. public class Siswa extends javax.swing.JPanel {
18.
19.
20. private Connection conn = new koneksi().connect();
21. private DefaultTableModel tabmode;
22.
23.
24. protected void kosong(){
25. tPendaftar.setText("");
26. tNamaLengkap.setText("");
27. tTmpLahir.setText("");
28. tTglLahir.setText("");
29. tAgama.setText("");
30. rbLaki.setSelected(false);
31. rbPerempuan.setSelected(false);
32. bgJenisKel.clearSelection();
33. tAgama.setText("");
34. tBeratBadan.setText("");
35. tTinggiBadan.setText("");
36. bgJenisKelWali.clearSelection();
37. tCari.setText("");
38. }
39.
40. protected void datatable(){
41. Object[] Baris = {
42. "No pendaftar",
43. "Nama Lengkap",
44. "Tempat Lahir",
45. "Tanggal Lahir",
46. "Jenis Kelamin",
47. "Agama",
48. "Berat Badan",
49. "Tinggi Badan",
50. };
51. tabmode = new DefaultTableModel(null, Baris);
52. tableSiswa.setModel(tabmode);
53.
54. String SQL = "SELECT * FROM datasiswabaru";
55.
56. try{
57. java.SQL.Statement stat = conn.createStatement();
58. ResultSet hasil = stat.executeQuery(SQL);
59. while(hasil.next()){
60. String a = hasil.getString("no_pendaftar");
61. String b = hasil.getString("namalengkap");
62. String c = hasil.getString("tempatlahir");
63. String d = hasil.getString("tanggallahir");
64. String e = hasil.getString("jeniskelamin");
65. String f = hasil.getString("agama");
66. String g = hasil.getString("berat_badan");
67. String h = hasil.getString("tinggi_badan");
68.
69. String[] data={a, b, c, d, e, f, g, h};
70. tabmode.addRow(data);
71. }
72. }catch(SQLException e){
73. JOptionPane.showMessageDialog(null,e);
74. }
75. }
76.
77. public Siswa() {
78. initComponents();
79. datatable();
80. }
81.
82. /**
83. * This method is called from within the constructor to
initialize the form.
84. * WARNING: Do NOT modify this code. The content of this
method is always
85. * regenerated by the Form Editor.
86. */
87. @SuppressWarnings("unchecked")
88. // <editor-fold defaultstate="collapsed" desc="Generated
Code">
89. private void initComponents() {
90.
91. bgJenisKel = new javax.swing.ButtonGroup();
92. bgJenisKelWali = new javax.swing.ButtonGroup();
93. jLabel1 = new javax.swing.JLabel();
94. Input = new javax.swing.JPanel();
95. DataSiswa = new javax.swing.JPanel();
96. nis = new javax.swing.JLabel();
97. tPendaftar = new javax.swing.JTextField();
98. namaSiswa = new javax.swing.JLabel();
99. tNamaLengkap = new javax.swing.JTextField();
100. jenisKelamin = new javax.swing.JLabel();
101. rbLaki = new javax.swing.JRadioButton();
102. rbPerempuan = new javax.swing.JRadioButton();
103. tmpLahir = new javax.swing.JLabel();
104. tTmpLahir = new javax.swing.JTextField();
105. tglLahir = new javax.swing.JLabel();
106. tTglLahir = new javax.swing.JTextField();
107. agama = new javax.swing.JLabel();
108. tAgama = new javax.swing.JTextField();
109. jLabel2 = new javax.swing.JLabel();
110. tBeratBadan = new javax.swing.JTextField();
111. tTinggiBadan = new javax.swing.JTextField();
112. jLabel3 = new javax.swing.JLabel();
113. bSimpan = new javax.swing.JButton();
114. bHapus = new javax.swing.JButton();
115. bEdit = new javax.swing.JButton();
116. bClear = new javax.swing.JButton();
117. Tabel = new javax.swing.JPanel();
118. tCari = new javax.swing.JTextField();
119. bCari = new javax.swing.JButton();
120. jScrollPane1 = new javax.swing.JScrollPane();
121. tableSiswa = new javax.swing.JTable();
122.
123. setBackground(new java.awt.Color(255, 71, 71));
124. setLayout(new
org.netbeans.lib.awtextra.AbsoluteLayout());
125.
126. jLabel1.setBackground(new java.awt.Color(255,
255, 255));
127. jLabel1.setFont(new java.awt.Font("Tahoma", 1,
14)); // NOI18N
128.
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
129. jLabel1.setText("PENERIMAAN SISWA BARU");
130. jLabel1.setOpaque(true);
131. add(jLabel1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(6, 6, 803, 33));
132.
133. Input.setBackground(new java.awt.Color(255, 255,
255));
134.
135.
DataSiswa.setBorder(javax.swing.BorderFactory.createTitledBorde
r("Data Siswa Pendaftar"));
136.
137. nis.setText("No. Pendaftar");
138.
139. namaSiswa.setText("Nama Lengkap");
140.
141. jenisKelamin.setText("Jenis Kelamin");
142.
143. bgJenisKel.add(rbLaki);
144. rbLaki.setText("Laki-Laki");
145.
146. bgJenisKel.add(rbPerempuan);
147. rbPerempuan.setText("Perempuan");
148.
149. tmpLahir.setText("Tempat Lahir");
150.
151. tglLahir.setText("Tanggal Lahir");
152.
153. agama.setText("Agama");
154.
155. jLabel2.setText("Berat Badan");
156.
157. jLabel3.setText("Tinggi Badan");
158.
159. javax.swing.GroupLayout DataSiswaLayout = new
javax.swing.GroupLayout(DataSiswa);
160. DataSiswa.setLayout(DataSiswaLayout);
161. DataSiswaLayout.setHorizontalGroup(
162.
DataSiswaLayout.createParallelGroup(javax.swing.GroupLayout.Ali
gnment.LEADING)
163.
.addGroup(DataSiswaLayout.createSequentialGroup()
164. .addContainerGap()
165.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.LEADING)
166. .addComponent(tmpLahir)
167. .addComponent(jenisKelamin)
168. .addComponent(tglLahir)
169. .addComponent(agama)
170. .addComponent(jLabel2)
171. .addComponent(jLabel3))
172. .addGap(25, 25, 25)
173.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.LEADING, false)
174. .addComponent(tTinggiBadan)
175.
.addGroup(DataSiswaLayout.createSequentialGroup()
176. .addComponent(rbLaki)
177. .addGap(31, 31, 31)
178. .addComponent(rbPerempuan))
179. .addComponent(tTglLahir)
180. .addComponent(tTmpLahir)
181. .addComponent(tAgama)
182. .addComponent(tBeratBadan,
javax.swing.GroupLayout.Alignment.TRAILING))
183. .addContainerGap(65, Short.MAX_VALUE))
184.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.LEADING)
185.
.addGroup(DataSiswaLayout.createSequentialGroup()
186. .addContainerGap()
187.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.LEADING)
188. .addComponent(nis)
189. .addComponent(namaSiswa))
190. .addGap(21, 21, 21)
191.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.LEADING, false)
192. .addComponent(tPendaftar,
javax.swing.GroupLayout.DEFAULT_SIZE, 183, Short.MAX_VALUE)
193. .addComponent(tNamaLengkap,
javax.swing.GroupLayout.DEFAULT_SIZE, 183, Short.MAX_VALUE))
194. .addContainerGap(62,
Short.MAX_VALUE)))
195. );
196. DataSiswaLayout.setVerticalGroup(
197.
DataSiswaLayout.createParallelGroup(javax.swing.GroupLayout.Ali
gnment.LEADING)
198.
.addGroup(DataSiswaLayout.createSequentialGroup()
199. .addGap(85, 85, 85)
200.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.BASELINE)
201. .addComponent(tmpLahir)
202. .addComponent(tTmpLahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
203. .addGap(12, 12, 12)
204.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.BASELINE)
205. .addComponent(tglLahir)
206. .addComponent(tTglLahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
207. .addGap(18, 18, 18)
208.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.BASELINE)
209. .addComponent(jenisKelamin)
210. .addComponent(rbLaki)
211. .addComponent(rbPerempuan))
212. .addGap(18, 18, 18)
213.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.BASELINE)
214. .addComponent(agama)
215. .addComponent(tAgama,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
216.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
217.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.BASELINE)
218. .addComponent(jLabel2)
219. .addComponent(tBeratBadan,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
220.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.REL
ATED)
221.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.BASELINE)
222. .addComponent(tTinggiBadan,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
223. .addComponent(jLabel3))
224. .addContainerGap(27, Short.MAX_VALUE))
225.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.LEADING)
226.
.addGroup(DataSiswaLayout.createSequentialGroup()
227. .addContainerGap()
228.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.BASELINE)
229. .addComponent(nis)
230. .addComponent(tPendaftar,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
231. .addGap(18, 18, 18)
232.
.addGroup(DataSiswaLayout.createParallelGroup(javax.swing.Group
Layout.Alignment.BASELINE)
233. .addComponent(namaSiswa)
234. .addComponent(tNamaLengkap,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
235. .addContainerGap(219,
Short.MAX_VALUE)))
236. );
237.
238. bSimpan.setText("Simpan");
239. bSimpan.addActionListener(new
java.awt.event.ActionListener() {
240. public void
actionPerformed(java.awt.event.ActionEvent evt) {
241. bSimpanActionPerformed(evt);
242. }
243. });
244.
245. bHapus.setText("Hapus");
246. bHapus.addActionListener(new
java.awt.event.ActionListener() {
247. public void
actionPerformed(java.awt.event.ActionEvent evt) {
248. bHapusActionPerformed(evt);
249. }
250. });
251.
252. bEdit.setText("Edit");
253. bEdit.addActionListener(new
java.awt.event.ActionListener() {
254. public void
actionPerformed(java.awt.event.ActionEvent evt) {
255. bEditActionPerformed(evt);
256. }
257. });
258.
259. bClear.setText("Clear");
260. bClear.addActionListener(new
java.awt.event.ActionListener() {
261. public void
actionPerformed(java.awt.event.ActionEvent evt) {
262. bClearActionPerformed(evt);
263. }
264. });
265.
266. javax.swing.GroupLayout InputLayout = new
javax.swing.GroupLayout(Input);
267. Input.setLayout(InputLayout);
268. InputLayout.setHorizontalGroup(
269.
InputLayout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
270.
.addGroup(InputLayout.createSequentialGroup()
271.
.addGroup(InputLayout.createParallelGroup(javax.swing.GroupLayo
ut.Alignment.LEADING)
272.
.addGroup(InputLayout.createSequentialGroup()
273. .addGap(186, 186, 186)
274. .addComponent(bSimpan)
275. .addGap(52, 52, 52)
276. .addComponent(bHapus)
277. .addGap(56, 56, 56)
278. .addComponent(bEdit)
279. .addGap(43, 43, 43)
280. .addComponent(bClear))
281.
.addGroup(InputLayout.createSequentialGroup()
282. .addGap(204, 204, 204)
283. .addComponent(DataSiswa,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
284. .addContainerGap(225, Short.MAX_VALUE))
285. );
286. InputLayout.setVerticalGroup(
287.
InputLayout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
288.
.addGroup(InputLayout.createSequentialGroup()
289. .addGap(9, 9, 9)
290. .addComponent(DataSiswa,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
291.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
292.
.addGroup(InputLayout.createParallelGroup(javax.swing.GroupLayo
ut.Alignment.BASELINE)
293. .addComponent(bClear)
294. .addComponent(bEdit)
295. .addComponent(bHapus)
296. .addComponent(bSimpan))
297. .addContainerGap(20, Short.MAX_VALUE))
298. );
299.
300. add(Input, new
org.netbeans.lib.awtextra.AbsoluteConstraints(6, 57, 803, -1));
301.
302. Tabel.setBackground(new java.awt.Color(255, 255,
255));
303.
Tabel.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 0, 0)));
304.
305. bCari.setText("Cari");
306. bCari.addActionListener(new
java.awt.event.ActionListener() {
307. public void
actionPerformed(java.awt.event.ActionEvent evt) {
308. bCariActionPerformed(evt);
309. }
310. });
311.
312. tableSiswa.setModel(new
javax.swing.table.DefaultTableModel(
313. new Object [][] {
314. {null, null, null, null, null, null,
null, null},
315. {null, null, null, null, null, null,
null, null},
316. {null, null, null, null, null, null,
null, null},
317. {null, null, null, null, null, null,
null, null},
318. {null, null, null, null, null, null,
null, null},
319. {null, null, null, null, null, null,
null, null},
320. {null, null, null, null, null, null,
null, null}
321. },
322. new String [] {
323. "No Pendaftar", "Nama Lengkap", "Tempat
Lahir", "Tanggal Lahir", "Jenis Kelamin", "Agama", "Berat
Badan", "Tinggi Badan"
324. }
325. ) {
326. boolean[] canEdit = new boolean [] {
327. false, false, false, false, false,
false, true, false
328. };
329.
330. public boolean isCellEditable(int rowIndex,
int columnIndex) {
331. return canEdit [columnIndex];
332. }
333. });
334. tableSiswa.addMouseListener(new
java.awt.event.MouseAdapter() {
335. public void
mouseClicked(java.awt.event.MouseEvent evt) {
336. tableSiswaMouseClicked(evt);
337. }
338. });
339. jScrollPane1.setViewportView(tableSiswa);
340.
341. javax.swing.GroupLayout TabelLayout = new
javax.swing.GroupLayout(Tabel);
342. Tabel.setLayout(TabelLayout);
343. TabelLayout.setHorizontalGroup(
344.
TabelLayout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
345.
.addGroup(TabelLayout.createSequentialGroup()
346. .addGap(13, 13, 13)
347.
.addGroup(TabelLayout.createParallelGroup(javax.swing.GroupLayo
ut.Alignment.LEADING)
348. .addComponent(jScrollPane1)
349.
.addGroup(TabelLayout.createSequentialGroup()
350. .addComponent(bCari,
javax.swing.GroupLayout.PREFERRED_SIZE, 112,
javax.swing.GroupLayout.PREFERRED_SIZE)
351. .addGap(31, 31, 31)
352. .addComponent(tCari,
javax.swing.GroupLayout.PREFERRED_SIZE, 585,
javax.swing.GroupLayout.PREFERRED_SIZE)
353. .addGap(0, 54,
Short.MAX_VALUE)))
354. .addContainerGap())
355. );
356. TabelLayout.setVerticalGroup(
357.
TabelLayout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
358.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
TabelLayout.createSequentialGroup()
359. .addContainerGap(24, Short.MAX_VALUE)
360.
.addGroup(TabelLayout.createParallelGroup(javax.swing.GroupLayo
ut.Alignment.BASELINE)
361. .addComponent(tCari,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
362. .addComponent(bCari))
363.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNR
ELATED)
364. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 105,
javax.swing.GroupLayout.PREFERRED_SIZE)
365. .addGap(34, 34, 34))
366. );
367.
368. add(Tabel, new
org.netbeans.lib.awtextra.AbsoluteConstraints(6, 463, -1, -1));
369. }// </editor-fold>
370.
371. private void
bCariActionPerformed(java.awt.event.ActionEvent evt) {
372. // TODO add your handling code here:
373. Object[] Baris = {
374. "No pendaftar",
375. "Nama Lengkap",
376. "Tempat Lahir",
377. "Tanggal Lahir",
378. "Jenis Kelamin",
379. "Agama",
380. "Berat Badan",
381. "Tinggi Badan",
382. };
383. tabmode = new DefaultTableModel(null, Baris);
384. tableSiswa.setModel(tabmode);
385.
386. String SQL = "SELECT * FROM datasiswabaru WHERE
namalengkap LIKE '%"+tCari.getText()+"%'";
387. try{
388. java.SQL.Statement stat =
conn.createStatement();
389. ResultSet hasil = stat.executeQuery(SQL);
390. while(hasil.next()){
391. String a =
hasil.getString("no_pendaftar");
392. String b =
hasil.getString("namalengkap");
393. String c =
hasil.getString("tempatlahir");
394. String d =
hasil.getString("tanggallahir");
395. String e =
hasil.getString("jeniskelamin");
396. String f = hasil.getString("agama");
397. String g =
hasil.getString("berat_badan");
398. String h =
hasil.getString("tinggi_badan");
399.
400. String[] data={a, b, c, d, e, f, g, h};
401. tabmode.addRow(data);
402. }
403. }catch(SQLException e){
404. JOptionPane.showMessageDialog(null,e);
405. }
406. kosong();
407. }
408.
409. private void
tableSiswaMouseClicked(java.awt.event.MouseEvent evt) {
410. // TODO add your handling code here:
411. int bar = tableSiswa.getSelectedRow();
412. String a = tabmode.getValueAt(bar,
0).toString();
413. String b = tabmode.getValueAt(bar,
1).toString();
414. String c = tabmode.getValueAt(bar,
2).toString();
415. String d = tabmode.getValueAt(bar,
3).toString();
416. String e = tabmode.getValueAt(bar,
4).toString();
417. String f = tabmode.getValueAt(bar,
5).toString();
418. String g = tabmode.getValueAt(bar,
6).toString();
419. String h = tabmode.getValueAt(bar,
7).toString();
420.
421. tPendaftar.setText(a);
422. tNamaLengkap.setText(b);
423. tTmpLahir.setText(c);
424. tTglLahir.setText(d);
425. if(g.equals("Laki-Laki")){
426. rbLaki.setSelected(true);
427. rbPerempuan.setSelected(false);
428. }else{
429. rbLaki.setSelected(false);
430. rbPerempuan.setSelected(true);
431. }
432. tAgama.setText(f);
433. tBeratBadan.setText(g);
434. tTinggiBadan.setText(h);
435. }
436.
437. private void
bSimpanActionPerformed(java.awt.event.ActionEvent evt) {
438. // TODO add your handling code here:
439. String SQL = "INSERT INTO datasiswabaru VALUES
(?,?,?,?,?,?,?,?)";
440. try{
441. PreparedStatement stat =
conn.prepareStatement(SQL);
442.
443. stat.setString(1, tPendaftar.getText());
444. stat.setString(2, tNamaLengkap.getText());
445. stat.setString(3, tTmpLahir.getText());
446. stat.setString(4, tTglLahir.getText());
447. String jkel = "";
448. if(rbLaki.isSelected()){
449. jkel="Laki-Laki";
450. }else{
451. jkel="Perempuan";
452. }
453. stat.setString(5, jkel);
454. stat.setString(6, tAgama.getText());
455. stat.setString(7, tBeratBadan.getText());
456. stat.setString(8, tTinggiBadan.getText());
457.
458. stat.executeUpdate();
459. JOptionPane.showMessageDialog(null, "DATA
Berhasil Disimpan");
460. kosong();
461. tPendaftar.requestFocus();
462. datatable();
463. }catch (SQLException e){
464. JOptionPane.showMessageDialog(null, "Data
Gagal Disimpan "+e);
465. }
466. }
467.
468. private void
bHapusActionPerformed(java.awt.event.ActionEvent evt) {
469. // TODO add your handling code here:
470. int ok =
JOptionPane.showConfirmDialog(null,"hapus","Konfirmasi
Dialog",JOptionPane.YES_NO_CANCEL_OPTION);
471. if(ok == 0){
472. String SQL = "DELETE FROM datasiswabaru
WHERE no_pendaftar='"+tPendaftar.getText()+"'";
473. try{
474. PreparedStatement stat =
conn.prepareStatement(SQL);
475.
476. stat.executeUpdate();
477. JOptionPane.showMessageDialog(null,
"Data Berhasil diUbah ");
478. kosong();
479. tPendaftar.requestFocus();
480. datatable();
481. }catch(SQLException e){
482. JOptionPane.showMessageDialog(null,"Data
Gagal DiUbah " + e);
483. }
484. }
485. }
486.
487. private void
bEditActionPerformed(java.awt.event.ActionEvent evt) {
488. // TODO add your handling code here:
489. try{
490. String SQL = "UPDATE datasiswabaru set
namalengkap=?, tempatlahir=?, tanggallahir=?, jeniskelamin=?,
agama=?, berat_badan=?, tinggi_badan=? WHERE no_pendaftar=?";
491. PreparedStatement stat =
conn.prepareStatement(SQL);
492. stat.setString(1, tNamaLengkap.getText());
493. stat.setString(2, tTmpLahir.getText());
494. stat.setString(3, tTglLahir.getText());
495. String jkel = "";
496. if(rbLaki.isSelected()){
497. jkel="Laki-Laki";
498. }else{
499. jkel="Perempuan";
500. }
501. stat.setString(4, jkel);
502. stat.setString(5, tAgama.getText());
503. stat.setString(6, tBeratBadan.getText());
504. stat.setString(7, tTinggiBadan.getText());
505. stat.setString(8, tPendaftar.getText());
506.
507. stat.executeUpdate();
508. JOptionPane.showMessageDialog(null, "Data
Berhasil diUbah ");
509. kosong();
510. tPendaftar.requestFocus();
511. datatable();
512. }catch(SQLException e){
513. JOptionPane.showMessageDialog(null,"Data
Gagal DiUbah " + e);
514. }
515. }
516.
517. private void
bClearActionPerformed(java.awt.event.ActionEvent evt) {
518. // TODO add your handling code here:
519. kosong();
520. datatable();
521. }
522.
523.
524. // Variables declaration - do not modify
525. private javax.swing.JPanel DataSiswa;
526. private javax.swing.JPanel Input;
527. private javax.swing.JPanel Tabel;
528. private javax.swing.JLabel agama;
529. private javax.swing.JButton bCari;
530. private javax.swing.JButton bClear;
531. private javax.swing.JButton bEdit;
532. private javax.swing.JButton bHapus;
533. private javax.swing.JButton bSimpan;
534. private javax.swing.ButtonGroup bgJenisKel;
535. private javax.swing.ButtonGroup bgJenisKelWali;
536. private javax.swing.JLabel jLabel1;
537. private javax.swing.JLabel jLabel2;
538. private javax.swing.JLabel jLabel3;
539. private javax.swing.JScrollPane jScrollPane1;
540. private javax.swing.JLabel jenisKelamin;
541. private javax.swing.JLabel namaSiswa;
542. private javax.swing.JLabel nis;
543. private javax.swing.JRadioButton rbLaki;
544. private javax.swing.JRadioButton rbPerempuan;
545. private javax.swing.JTextField tAgama;
546. private javax.swing.JTextField tBeratBadan;
547. private javax.swing.JTextField tCari;
548. private javax.swing.JTextField tNamaLengkap;
549. private javax.swing.JTextField tPendaftar;
550. private javax.swing.JTextField tTglLahir;
551. private javax.swing.JTextField tTinggiBadan;
552. private javax.swing.JTextField tTmpLahir;
553. private javax.swing.JTable tableSiswa;
554. private javax.swing.JLabel tglLahir;
555. private javax.swing.JLabel tmpLahir;
556. // End of variables declaration
557. }
558.

E. Popup Siswa

1. package tk_munna;
2. import java.SQL.*;
3. import javax.swing.JOptionPane;
4. import javax.swing.table.DefaultTableModel;
5. import java.awt.event.KeyEvent;
6. import tk_munna.Orangtuasiswa;
7. import Seleksi.Nilai;
8. import koneksi.koneksi;
9. /**
10. *
11. * @author ASUS
12. */
13. public class popup_siswa extends javax.swing.JFrame {
14. private Connection conn = new koneksi().connect();
15. public DefaultTableModel tabmode;
16. public Orangtuasiswa datasiswabaru =null;
17. /**
18. * Creates new form popup_siswa
19. */
20. public popup_siswa() {
21. initComponents();
22. datatable();
23. }
24.
25. protected void datatable(){
26. Object[] Baris ={"No Pendaftaran","Nama Lengkap","Jenis Kelamin"};
27. tabmode = new DefaultTableModel(null, Baris);
28. String cariitem=txtcari.getText();
29.
30. try {
31. String SQL = "SELECT * FROM datasiswabaru where no_pendaftar like
'%"+cariitem+"%' or namalengkap like '%"+cariitem+"%' order by no_pendaftar
asc";
32. Statement stat = conn.createStatement();
33. ResultSet hasil = stat.executeQuery(SQL);
34. while (hasil.next()){
35. tabmode.addRow(new Object[]{
36. hasil.getString(1),
37. hasil.getString(2),
38. hasil.getString(5)
39. });
40. }
41. tabelssiwa.setModel(tabmode);
42. } catch (Exception e){
43. JOptionPane.showMessageDialog(null, "data gagal dipanggil"+e);
44. }
45. }
46. /**
47. * This method is called from within the constructor to initialize the
form.
48. * WARNING: Do NOT modify this code. The content of this method is
always
49. * regenerated by the Form Editor.
50. */
51. @SuppressWarnings("unchecked")
52. // <editor-fold defaultstate="collapsed" desc="Generated Code">
53. private void initComponents() {
54.
55. jPanel1 = new javax.swing.JPanel();
56. jScrollPane1 = new javax.swing.JScrollPane();
57. tabelssiwa = new javax.swing.JTable();
58. jLabel1 = new javax.swing.JLabel();
59. txtcari = new javax.swing.JTextField();
60. jButton1 = new javax.swing.JButton();
61.
62.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
63.
64. tabelssiwa.setBackground(new java.awt.Color(153, 255, 153));
65. tabelssiwa.setModel(new javax.swing.table.DefaultTableModel(
66. new Object [][] {
67. {null, null, null, null},
68. {null, null, null, null},
69. {null, null, null, null},
70. {null, null, null, null}
71. },
72. new String [] {
73. "Title 1", "Title 2", "Title 3", "Title 4"
74. }
75. ));
76. tabelssiwa.addMouseListener(new java.awt.event.MouseAdapter() {
77. public void mouseClicked(java.awt.event.MouseEvent evt) {
78. tabelssiwaMouseClicked(evt);
79. }
80. });
81. jScrollPane1.setViewportView(tabelssiwa);
82.
83. jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 18)); //
NOI18N
84. jLabel1.setText("POP UP CARI SISWA");
85.
86. txtcari.addKeyListener(new java.awt.event.KeyAdapter() {
87. public void keyPressed(java.awt.event.KeyEvent evt) {
88. txtcariKeyPressed(evt);
89. }
90. });
91.
92. jButton1.setFont(new java.awt.Font("Times New Roman", 1, 12)); //
NOI18N
93. jButton1.setText("Cari");
94. jButton1.addActionListener(new java.awt.event.ActionListener() {
95. public void actionPerformed(java.awt.event.ActionEvent evt) {
96. jButton1ActionPerformed(evt);
97. }
98. });
99.
100. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
101. jPanel1.setLayout(jPanel1Layout);
102. jPanel1Layout.setHorizontalGroup(
103.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
104. .addGroup(jPanel1Layout.createSequentialGroup()
105.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
106. .addGroup(jPanel1Layout.createSequentialGroup()
107. .addGap(47, 47, 47)
108. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 452,
javax.swing.GroupLayout.PREFERRED_SIZE))
109. .addGroup(jPanel1Layout.createSequentialGroup()
110. .addGap(30, 30, 30)
111.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
112. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 188,
javax.swing.GroupLayout.PREFERRED_SIZE)
113.
.addGroup(jPanel1Layout.createSequentialGroup()
114. .addComponent(txtcari,
javax.swing.GroupLayout.PREFERRED_SIZE, 150,
javax.swing.GroupLayout.PREFERRED_SIZE)
115. .addGap(18, 18, 18)
116. .addComponent(jButton1)))))
117. .addContainerGap(49, Short.MAX_VALUE))
118. );
119. jPanel1Layout.setVerticalGroup(
120.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
121. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
122. .addContainerGap()
123. .addComponent(jLabel1)
124.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 8,
Short.MAX_VALUE)
125.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
126. .addComponent(txtcari,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
127. .addComponent(jButton1))
128. .addGap(18, 18, 18)
129. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 106,
javax.swing.GroupLayout.PREFERRED_SIZE)
130. .addGap(58, 58, 58))
131. );
132.
133. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
134. getContentPane().setLayout(layout);
135. layout.setHorizontalGroup(
136.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
137. .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
138. );
139. layout.setVerticalGroup(
140.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
141. .addComponent(jPanel1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
142. );
143.
144. pack();
145. }// </editor-fold>
146.
147. private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
{
148. datatable(); // TODO add your handling code here:
149. }
150.
151. private void txtcariKeyPressed(java.awt.event.KeyEvent evt) {
152. if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
153. datatable();
154. } // TODO add your handling code here:
155. }
156.
157. private void tabelssiwaMouseClicked(java.awt.event.MouseEvent evt) {
158. // TODO add your handling code here:
159. int tableSiswa = tabelssiwa.getSelectedRow();
160. datasiswabaru.no_pendaftarA = tabelssiwa.getValueAt(tableSiswa,
0).toString();
161. datasiswabaru.namalengkapA = tabelssiwa.getValueAt(tableSiswa,
1).toString();
162. datasiswabaru.jeniskelaminA = tabelssiwa.getValueAt(tableSiswa,
2).toString();
163. datasiswabaru.PilihSiswa();
164. this.dispose();
165.
166.
167. }
168.
169. /**
170. * @param args the command line arguments
171. */
172. public static void main(String args[]) {
173. /* Set the Nimbus look and feel */
174. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
175. /* If Nimbus (introduced in Java SE 6) is not available, stay
with the default look and feel.
176. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
177. */
178. try {
179. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
180. if ("Nimbus".equals(info.getName())) {
181.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
182. break;
183. }
184. }
185. } catch (ClassNotFoundException ex) {
186.
java.util.logging.Logger.getLogger(popup_siswa.class.getName()).log(java.ut
il.logging.Level.SEVERE, null, ex);
187. } catch (InstantiationException ex) {
188.
java.util.logging.Logger.getLogger(popup_siswa.class.getName()).log(java.ut
il.logging.Level.SEVERE, null, ex);
189. } catch (IllegalAccessException ex) {
190.
java.util.logging.Logger.getLogger(popup_siswa.class.getName()).log(java.ut
il.logging.Level.SEVERE, null, ex);
191. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
192.
java.util.logging.Logger.getLogger(popup_siswa.class.getName()).log(java.ut
il.logging.Level.SEVERE, null, ex);
193. }
194. //</editor-fold>
195.
196. /* Create and display the form */
197. java.awt.EventQueue.invokeLater(new Runnable() {
198. public void run() {
199. new popup_siswa().setVisible(true);
200. }
201. });
202. }
203.
204. // Variables declaration - do not modify
205. private javax.swing.JButton jButton1;
206. private javax.swing.JLabel jLabel1;
207. private javax.swing.JPanel jPanel1;
208. private javax.swing.JScrollPane jScrollPane1;
209. private javax.swing.JTable tabelssiwa;
210. private javax.swing.JTextField txtcari;
211. // End of variables declaration
212. }
213.

F. Popup_siswa1

1. package tk_munna;
2. import java.SQL.*;
3. import javax.swing.JOptionPane;
4. import javax.swing.table.DefaultTableModel;
5. import java.awt.event.KeyEvent;
6. import Seleksi.Nilai;
7. import koneksi.koneksi;
8. /**
9. *
10. * @author ASUS
11. */
12. public class popup_siswa1 extends javax.swing.JFrame {
13. private Connection conn = new koneksi().connect();
14. public DefaultTableModel tabmode;
15. public Nilai datasiswabaru =null;
16.
17. /**
18. * Creates new form popup_siswa1
19. */
20. public popup_siswa1() {
21. initComponents();
22. datatable();
23. }
24.
25. protected void datatable(){
26. Object[] Baris ={"No Pendaftaran","Nama
Lengkap","Jenis Kelamin"};
27. tabmode = new DefaultTableModel(null, Baris);
28. String cariitem=txtcari.getText();
29.
30. try {
31. String SQL = "SELECT * FROM datasiswabaru where
no_pendaftar like '%"+cariitem+"%' or namalengkap like
'%"+cariitem+"%' order by no_pendaftar asc";
32. Statement stat = conn.createStatement();
33. ResultSet hasil = stat.executeQuery(SQL);
34. while (hasil.next()){
35. tabmode.addRow(new Object[]{
36. hasil.getString(1),
37. hasil.getString(2),
38. hasil.getString(5)
39. });
40. }
41. tabelssiwa.setModel(tabmode);
42. } catch (Exception e){
43. JOptionPane.showMessageDialog(null, "data gagal
dipanggil"+e);
44. }
45. }
46. /**
47. * This method is called from within the constructor
to initialize the form.
48. * WARNING: Do NOT modify this code. The content of
this method is always
49. * regenerated by the Form Editor.
50. */
51. @SuppressWarnings("unchecked")
52. // <editor-fold defaultstate="collapsed"
desc="Generated Code">
53. private void initComponents() {
54.
55. jScrollPane1 = new javax.swing.JScrollPane();
56. tabelssiwa = new javax.swing.JTable();
57. jLabel1 = new javax.swing.JLabel();
58. txtcari = new javax.swing.JTextField();
59. jButton1 = new javax.swing.JButton();
60.
61.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON
_CLOSE);
62.
63. tabelssiwa.setBackground(new java.awt.Color(153,
255, 153));
64. tabelssiwa.setModel(new
javax.swing.table.DefaultTableModel(
65. new Object [][] {
66. {null, null, null, null},
67. {null, null, null, null},
68. {null, null, null, null},
69. {null, null, null, null}
70. },
71. new String [] {
72. "Title 1", "Title 2", "Title 3", "Title 4"
73. }
74. ));
75. tabelssiwa.addMouseListener(new
java.awt.event.MouseAdapter() {
76. public void
mouseClicked(java.awt.event.MouseEvent evt) {
77. tabelssiwaMouseClicked(evt);
78. }
79. });
80. jScrollPane1.setViewportView(tabelssiwa);
81.
82. jLabel1.setFont(new java.awt.Font("Times New
Roman", 1, 18)); // NOI18N
83. jLabel1.setText("POP UP CARI SISWA");
84.
85. txtcari.addKeyListener(new
java.awt.event.KeyAdapter() {
86. public void keyPressed(java.awt.event.KeyEvent
evt) {
87. txtcariKeyPressed(evt);
88. }
89. });
90.
91. jButton1.setFont(new java.awt.Font("Times New
Roman", 1, 12)); // NOI18N
92. jButton1.setText("Cari");
93. jButton1.addActionListener(new
java.awt.event.ActionListener() {
94. public void
actionPerformed(java.awt.event.ActionEvent evt) {
95. jButton1ActionPerformed(evt);
96. }
97. });
98.
99. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
100. getContentPane().setLayout(layout);
101. layout.setHorizontalGroup(
102.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment
.LEADING)
103. .addGroup(layout.createSequentialGroup()
104. .addContainerGap()
105.
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.LEADING)
106. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 188,
javax.swing.GroupLayout.PREFERRED_SIZE)
107.
.addGroup(layout.createSequentialGroup()
108. .addComponent(txtcari,
javax.swing.GroupLayout.PREFERRED_SIZE, 150,
javax.swing.GroupLayout.PREFERRED_SIZE)
109. .addGap(30, 30, 30)
110. .addComponent(jButton1)))
111.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
112.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
113.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
114. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 452,
javax.swing.GroupLayout.PREFERRED_SIZE)
115. .addContainerGap())
116. );
117. layout.setVerticalGroup(
118.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment
.LEADING)
119.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
120. .addContainerGap()
121. .addComponent(jLabel1)
122. .addGap(26, 26, 26)
123.
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.BASELINE)
124. .addComponent(txtcari,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
125. .addComponent(jButton1))
126. .addGap(18, 18, 18)
127. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 106,
javax.swing.GroupLayout.PREFERRED_SIZE)
128. .addContainerGap(65, Short.MAX_VALUE))
129. );
130.
131. pack();
132. }// </editor-fold>
133.
134. private void
tabelssiwaMouseClicked(java.awt.event.MouseEvent evt) {
135. // TODO add your handling code here:
136. int tableSiswa = tabelssiwa.getSelectedRow();
137. datasiswabaru.no_pendaftarA =
tabelssiwa.getValueAt(tableSiswa, 0).toString();
138. datasiswabaru.namalengkapA =
tabelssiwa.getValueAt(tableSiswa, 1).toString();
139. datasiswabaru.jeniskelaminA =
tabelssiwa.getValueAt(tableSiswa, 2).toString();
140. datasiswabaru.PilihSiswa();
141. this.dispose();
142.
143. }
144.
145. private void txtcariKeyPressed(java.awt.event.KeyEvent
evt) {
146. if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
147. datatable();
148. } // TODO add your handling code here:
149. }
150.
151. private void
jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
152. datatable(); // TODO add your handling code
here:
153. }
154.
155. /**
156. * @param args the command line arguments
157. */
158. public static void main(String args[]) {
159. /* Set the Nimbus look and feel */
160. //<editor-fold defaultstate="collapsed" desc="
Look and feel setting code (optional) ">
161. /* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
162. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfe
el/plaf.html
163. */
164. try {
165. for (javax.swing.UIManager.LookAndFeelInfo
info : javax.swing.UIManager.getInstalledLookAndFeels()) {
166. if ("Nimbus".equals(info.getName())) {
167.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
168. break;
169. }
170. }
171. } catch (ClassNotFoundException ex) {
172.
java.util.logging.Logger.getLogger(popup_siswa1.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
173. } catch (InstantiationException ex) {
174.
java.util.logging.Logger.getLogger(popup_siswa1.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
175. } catch (IllegalAccessException ex) {
176.
java.util.logging.Logger.getLogger(popup_siswa1.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
177. } catch
(javax.swing.UnsupportedLookAndFeelException ex) {
178.
java.util.logging.Logger.getLogger(popup_siswa1.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
179. }
180. //</editor-fold>
181.
182. /* Create and display the form */
183. java.awt.EventQueue.invokeLater(new Runnable() {
184. public void run() {
185. new popup_siswa1().setVisible(true);
186. }
187. });
188. }
189.
190. // Variables declaration - do not modify
191. private javax.swing.JButton jButton1;
192. private javax.swing.JLabel jLabel1;
193. private javax.swing.JScrollPane jScrollPane1;
194. private javax.swing.JTable tabelssiwa;
195. private javax.swing.JTextField txtcari;
196. // End of variables declaration
197. }
198.

G. Seleksi

1. package Seleksi;
2.
3. import java.SQL.*;
4. import java.text.DecimalFormat;
5. import javax.swing.*;
6. import javax.swing.table.DefaultTableModel;
7. import koneksi.koneksi;
8. import tk_munna.popup_siswa1;
9. /**
10. *
11. * @author user
12. */
13. public class Nilai extends javax.swing.JPanel {
14. public String no_pendaftarA, namalengkapA, tempatlahirA, tanggallahirA,
jeniskelaminA, agamaA, berat_badanA,tinggi_badanA;
15.
16.
17. private Connection conn = new koneksi().connect();
18. private DefaultTableModel tabmode;
19.
20. protected void kosong(){
21. tPendaftaran.setText("");
22. tNamalengkap.setText("");
23. rbLaki.setSelected(false);
24. rbPerempuan.setSelected(false);
25. buttonGroup1.clearSelection();
26. tMasukkanUsia.setText("");
27.
28. }
29.
30. protected void statusKosong(){
31. nilaiAkhir.setText("");
32. statusKet.setText("");
33. panelStatusNilai.setVisible(false);
34. }
35.
36. public void PilihSiswa () {
37. popup_siswa1 pps = new popup_siswa1();
38. pps.datasiswabaru = this;
39. tPendaftaran.setText(no_pendaftarA);
40. tNamalengkap.setText(namalengkapA);
41. if(jeniskelaminA.equals("Laki-Laki")){
42. rbLaki.setSelected(true);
43. rbPerempuan.setSelected(false);
44. }else{
45. rbLaki.setSelected(false);
46. rbPerempuan.setSelected(true);
47. }
48. }
49. protected void datatable(){
50. Object[] Baris = {
51. "no_pendaftar",
52. "namalengkap",
53. "jeniskelamin",
54. "umur",
55. "hasil_akhir",
56. "keterangan"
57. };
58.
59. tabmode = new DefaultTableModel(null, Baris);
60. tableKelas.setModel(tabmode);
61.
62. String SQL = "SELECT * FROM seleksi";
63.
64. try{
65. java.SQL.Statement stat = conn.createStatement();
66. ResultSet hasil = stat.executeQuery(SQL);
67. while(hasil.next()){
68. String a = hasil.getString("no_pendaftar");
69. String b = hasil.getString("namalengkap");
70. String c = hasil.getString("jeniskelamin");
71. String d = hasil.getString("umur");
72. String e = hasil.getString("hasil_akhir");
73. String f = hasil.getString("keterangan");
74.
75. String[] data={a, b, c, d, e, f};
76. tabmode.addRow(data);
77. }
78. }catch(SQLException e){
79. JOptionPane.showMessageDialog(null,e);
80. }
81. }
82.
83.
84. protected double getHitung(){
85.
86. int nilaiTugas = Integer.parseInt(tMasukkanUsia.getText());
87.
88.
89. double akhir = (1*nilaiTugas);
90.
91. return akhir;
92. }
93.
94. protected String getKet(){
95. double hitung = getHitung();
96. String Ket = "";
97.
98. if((hitung >= 5) && (hitung <= 6)){
99. Ket = "Lulus";
100. }else if ((hitung >= 3 )&&(hitung <= 4)){
101. Ket = "Tidak Lulus";
102. }
103.
104. return Ket;
105. }
106.
107. protected void statusHitung(){
108. panelStatusNilai.setVisible(true);
109. statusNilai.setText(" "+getHitung());
110. statusKet.setText(" "+getKet());
111. }
112.
113. public Nilai() {
114. initComponents();
115. datatable();
116. /* getRelasiNis();
117. getRelasiKdKelas();
118. getRelasiKdMapel();*/
119. panelStatusNilai.setVisible(false);
120. }
121.
122. /**
123. * This method is called from within the constructor to initialize
the form.
124. * WARNING: Do NOT modify this code. The content of this method is
always
125. * regenerated by the Form Editor.
126. */
127. @SuppressWarnings("unchecked")
128. // <editor-fold defaultstate="collapsed" desc="Generated Code">
129. private void initComponents() {
130.
131. jScrollPane1 = new javax.swing.JScrollPane();
132. jEditorPane1 = new javax.swing.JEditorPane();
133. buttonGroup1 = new javax.swing.ButtonGroup();
134. Judul1 = new javax.swing.JLabel();
135. jPanel2 = new javax.swing.JPanel();
136. nis = new javax.swing.JLabel();
137. kdKelas = new javax.swing.JLabel();
138. kdMapel = new javax.swing.JLabel();
139. jPanel1 = new javax.swing.JPanel();
140. judul2 = new javax.swing.JLabel();
141. tugasHarian = new javax.swing.JLabel();
142. tMasukkanUsia = new javax.swing.JTextField();
143. panelStatusNilai = new javax.swing.JPanel();
144. nilaiAkhir = new javax.swing.JLabel();
145. keterangan = new javax.swing.JLabel();
146. statusNilai = new javax.swing.JLabel();
147. statusKet = new javax.swing.JLabel();
148. bClear = new javax.swing.JButton();
149. bSimpan = new javax.swing.JButton();
150. bHapus = new javax.swing.JButton();
151. bEdit = new javax.swing.JButton();
152. rbLaki = new javax.swing.JRadioButton();
153. rbPerempuan = new javax.swing.JRadioButton();
154. tPendaftaran = new javax.swing.JTextField();
155. tNamalengkap = new javax.swing.JTextField();
156. jButton1 = new javax.swing.JButton();
157. jPanel3 = new javax.swing.JPanel();
158. jScrollPane2 = new javax.swing.JScrollPane();
159. tableKelas = new javax.swing.JTable();
160.
161. jScrollPane1.setViewportView(jEditorPane1);
162.
163. setBackground(new java.awt.Color(255, 71, 71));
164.
165. Judul1.setBackground(new java.awt.Color(255, 255, 255));
166. Judul1.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
167. Judul1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
168. Judul1.setText("FORM PENILAIAN");
169. Judul1.setOpaque(true);
170.
171. jPanel2.setBackground(new java.awt.Color(255, 255, 255));
172.
173. nis.setText("No. Pendaftaran");
174.
175. kdKelas.setText("Nama Lengkap");
176.
177. kdMapel.setText("Jenis Kelamin");
178.
179. jPanel1.setBackground(new java.awt.Color(0, 255, 204));
180.
181. judul2.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
182. judul2.setText("Peniliaian");
183. judul2.setBorder(javax.swing.BorderFactory.createMatteBorder(0,
0, 1, 0, new java.awt.Color(0, 0, 0)));
184.
185. tugasHarian.setText("Masukkan Usia");
186.
187. tMasukkanUsia.addActionListener(new
java.awt.event.ActionListener() {
188. public void actionPerformed(java.awt.event.ActionEvent evt) {
189. tMasukkanUsiaActionPerformed(evt);
190. }
191. });
192.
193.
panelStatusNilai.setBorder(javax.swing.BorderFactory.createTitledBorder("")
);
194.
195. nilaiAkhir.setText(" Nilai Akhir :");
196.
197. keterangan.setText("Keterangan :");
198.
199. statusNilai.setFont(new java.awt.Font("Tahoma", 1, 12)); //
NOI18N
200. statusNilai.setText(" ");
201.
202. statusKet.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
203. statusKet.setText(" ");
204.
205. javax.swing.GroupLayout panelStatusNilaiLayout = new
javax.swing.GroupLayout(panelStatusNilai);
206. panelStatusNilai.setLayout(panelStatusNilaiLayout);
207. panelStatusNilaiLayout.setHorizontalGroup(
208.
panelStatusNilaiLayout.createParallelGroup(javax.swing.GroupLayout.Alignmen
t.LEADING)
209. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
panelStatusNilaiLayout.createSequentialGroup()
210. .addContainerGap()
211.
.addGroup(panelStatusNilaiLayout.createParallelGroup(javax.swing.GroupLayou
t.Alignment.LEADING)
212. .addComponent(keterangan,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
213.
.addGroup(panelStatusNilaiLayout.createSequentialGroup()
214. .addComponent(nilaiAkhir,
javax.swing.GroupLayout.PREFERRED_SIZE, 83,
javax.swing.GroupLayout.PREFERRED_SIZE)
215. .addGap(0, 0, Short.MAX_VALUE)))
216.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
217.
.addGroup(panelStatusNilaiLayout.createParallelGroup(javax.swing.GroupLayou
t.Alignment.LEADING, false)
218. .addComponent(statusNilai,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
219. .addComponent(statusKet,
javax.swing.GroupLayout.DEFAULT_SIZE, 99, Short.MAX_VALUE))
220. .addGap(25, 25, 25))
221. );
222. panelStatusNilaiLayout.setVerticalGroup(
223.
panelStatusNilaiLayout.createParallelGroup(javax.swing.GroupLayout.Alignmen
t.LEADING)
224. .addGroup(panelStatusNilaiLayout.createSequentialGroup()
225. .addGap(23, 23, 23)
226.
.addGroup(panelStatusNilaiLayout.createParallelGroup(javax.swing.GroupLayou
t.Alignment.BASELINE)
227. .addComponent(nilaiAkhir)
228. .addComponent(statusNilai,
javax.swing.GroupLayout.PREFERRED_SIZE, 26,
javax.swing.GroupLayout.PREFERRED_SIZE))
229. .addGap(18, 18, 18)
230.
.addGroup(panelStatusNilaiLayout.createParallelGroup(javax.swing.GroupLayou
t.Alignment.BASELINE)
231. .addComponent(keterangan)
232. .addComponent(statusKet,
javax.swing.GroupLayout.PREFERRED_SIZE, 26,
javax.swing.GroupLayout.PREFERRED_SIZE))
233. .addContainerGap(19, Short.MAX_VALUE))
234. );
235.
236. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
237. jPanel1.setLayout(jPanel1Layout);
238. jPanel1Layout.setHorizontalGroup(
239.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
240. .addGroup(jPanel1Layout.createSequentialGroup()
241. .addContainerGap()
242.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
243. .addComponent(panelStatusNilai,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
244. .addGroup(jPanel1Layout.createSequentialGroup()
245. .addComponent(tugasHarian)
246. .addGap(41, 41, 41)
247. .addComponent(tMasukkanUsia,
javax.swing.GroupLayout.PREFERRED_SIZE, 44,
javax.swing.GroupLayout.PREFERRED_SIZE)
248. .addGap(0, 131, Short.MAX_VALUE))
249. .addComponent(judul2,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
250. .addContainerGap())
251. );
252. jPanel1Layout.setVerticalGroup(
253.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
254. .addGroup(jPanel1Layout.createSequentialGroup()
255. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
256. .addComponent(judul2,
javax.swing.GroupLayout.PREFERRED_SIZE, 24,
javax.swing.GroupLayout.PREFERRED_SIZE)
257. .addGap(21, 21, 21)
258.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
259. .addComponent(tugasHarian)
260. .addComponent(tMasukkanUsia,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
261. .addGap(83, 83, 83)
262. .addComponent(panelStatusNilai,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
263. );
264.
265. bClear.setText("Clear");
266. bClear.addActionListener(new java.awt.event.ActionListener() {
267. public void actionPerformed(java.awt.event.ActionEvent evt) {
268. bClearActionPerformed(evt);
269. }
270. });
271.
272. bSimpan.setText("Simpan");
273. bSimpan.addActionListener(new java.awt.event.ActionListener() {
274. public void actionPerformed(java.awt.event.ActionEvent evt) {
275. bSimpanActionPerformed(evt);
276. }
277. });
278.
279. bHapus.setText("Hapus");
280. bHapus.addActionListener(new java.awt.event.ActionListener() {
281. public void actionPerformed(java.awt.event.ActionEvent evt) {
282. bHapusActionPerformed(evt);
283. }
284. });
285.
286. bEdit.setText("Edit");
287. bEdit.addActionListener(new java.awt.event.ActionListener() {
288. public void actionPerformed(java.awt.event.ActionEvent evt) {
289. bEditActionPerformed(evt);
290. }
291. });
292.
293. buttonGroup1.add(rbLaki);
294. rbLaki.setText("Laki-Laki");
295.
296. buttonGroup1.add(rbPerempuan);
297. rbPerempuan.setText("Perempuan");
298.
299. jButton1.setFont(new java.awt.Font("Times New Roman", 1, 12)); //
NOI18N
300. jButton1.setText("Cari");
301. jButton1.addActionListener(new java.awt.event.ActionListener() {
302. public void actionPerformed(java.awt.event.ActionEvent evt) {
303. jButton1ActionPerformed(evt);
304. }
305. });
306.
307. javax.swing.GroupLayout jPanel2Layout = new
javax.swing.GroupLayout(jPanel2);
308. jPanel2.setLayout(jPanel2Layout);
309. jPanel2Layout.setHorizontalGroup(
310.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
311. .addGroup(jPanel2Layout.createSequentialGroup()
312.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
313. .addGroup(jPanel2Layout.createSequentialGroup()
314. .addContainerGap()
315.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING, false)
316.
.addGroup(jPanel2Layout.createSequentialGroup()
317. .addComponent(kdMapel)
318. .addGap(38, 38, 38)
319. .addComponent(rbLaki)
320. .addGap(18, 18, 18)
321. .addComponent(rbPerempuan))
322.
.addGroup(jPanel2Layout.createSequentialGroup()
323.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
324. .addComponent(nis,
javax.swing.GroupLayout.PREFERRED_SIZE, 80,
javax.swing.GroupLayout.PREFERRED_SIZE)
325. .addComponent(kdKelas))
326. .addGap(18, 18, 18)
327.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
328. .addComponent(tPendaftaran)
329. .addComponent(tNamalengkap))))
330. .addGap(18, 18, 18)
331. .addComponent(jButton1))
332. .addGroup(jPanel2Layout.createSequentialGroup()
333. .addGap(31, 31, 31)
334. .addComponent(bSimpan)
335. .addGap(23, 23, 23)
336. .addComponent(bEdit,
javax.swing.GroupLayout.PREFERRED_SIZE, 68,
javax.swing.GroupLayout.PREFERRED_SIZE)
337. .addGap(18, 18, 18)
338. .addComponent(bHapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 68,
javax.swing.GroupLayout.PREFERRED_SIZE)
339. .addGap(18, 18, 18)
340. .addComponent(bClear,
javax.swing.GroupLayout.PREFERRED_SIZE, 69,
javax.swing.GroupLayout.PREFERRED_SIZE)))
341. .addGap(18, 18, 18)
342. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
343. .addContainerGap())
344. );
345. jPanel2Layout.setVerticalGroup(
346.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
347. .addGroup(jPanel2Layout.createSequentialGroup()
348.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)
349. .addGroup(jPanel2Layout.createSequentialGroup()
350. .addGap(81, 81, 81)
351.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
352. .addComponent(nis)
353. .addComponent(tPendaftaran,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
354. .addComponent(jButton1))
355. .addGap(18, 18, 18)
356.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
357. .addComponent(kdKelas)
358. .addComponent(tNamalengkap,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
359. .addGap(18, 18, 18)
360.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
361. .addComponent(kdMapel)
362. .addComponent(rbLaki)
363. .addComponent(rbPerempuan))
364. .addGap(49, 49, 49)
365.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.BASELINE)
366. .addComponent(bSimpan)
367. .addComponent(bHapus)
368. .addComponent(bEdit)
369. .addComponent(bClear)))
370. .addGroup(jPanel2Layout.createSequentialGroup()
371. .addGap(22, 22, 22)
372. .addComponent(jPanel1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
373. .addContainerGap(21, Short.MAX_VALUE))
374. );
375.
376. jPanel3.setBackground(new java.awt.Color(255, 255, 255));
377.
378. tableKelas.setModel(new javax.swing.table.DefaultTableModel(
379. new Object [][] {
380. {null, null, null, null, null, null},
381. {null, null, null, null, null, null},
382. {null, null, null, null, null, null},
383. {null, null, null, null, null, null}
384. },
385. new String [] {
386. "No Pendaftaran", "Nama Lengkap", "Jenis Kelamin",
"Umur", "Nilai Akhir", "Keterangan"
387. }
388. ));
389. tableKelas.addMouseListener(new java.awt.event.MouseAdapter() {
390. public void mouseClicked(java.awt.event.MouseEvent evt) {
391. tableKelasMouseClicked(evt);
392. }
393. });
394. jScrollPane2.setViewportView(tableKelas);
395.
396. javax.swing.GroupLayout jPanel3Layout = new
javax.swing.GroupLayout(jPanel3);
397. jPanel3.setLayout(jPanel3Layout);
398. jPanel3Layout.setHorizontalGroup(
399.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
400. .addGroup(jPanel3Layout.createSequentialGroup()
401. .addContainerGap()
402. .addComponent(jScrollPane2)
403. .addContainerGap())
404. );
405. jPanel3Layout.setVerticalGroup(
406.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING
)
407. .addGroup(jPanel3Layout.createSequentialGroup()
408. .addContainerGap()
409. .addComponent(jScrollPane2,
javax.swing.GroupLayout.DEFAULT_SIZE, 139, Short.MAX_VALUE)
410. .addContainerGap())
411. );
412.
413. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(this);
414. this.setLayout(layout);
415. layout.setHorizontalGroup(
416.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
417. .addGroup(layout.createSequentialGroup()
418. .addContainerGap()
419.
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEAD
ING)
420. .addComponent(jPanel2,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
421. .addComponent(Judul1,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
422. .addComponent(jPanel3,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
423. .addContainerGap())
424. );
425. layout.setVerticalGroup(
426.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
427. .addGroup(layout.createSequentialGroup()
428. .addContainerGap()
429. .addComponent(Judul1,
javax.swing.GroupLayout.PREFERRED_SIZE, 33,
javax.swing.GroupLayout.PREFERRED_SIZE)
430. .addGap(18, 18, 18)
431. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
432. .addGap(18, 18, 18)
433. .addComponent(jPanel3,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
434. .addContainerGap(43, Short.MAX_VALUE))
435. );
436. }// </editor-fold>
437.
438. private void tMasukkanUsiaActionPerformed(java.awt.event.ActionEvent
evt) {
439. // TODO add your handling code here:
440. }
441.
442. private void bSimpanActionPerformed(java.awt.event.ActionEvent evt) {
443. // TODO add your handling code here:
444. String SQL = "INSERT INTO seleksi VALUES (?,?,?,?,?,?)";
445. try{
446. PreparedStatement stat = conn.prepareStatement(SQL);
447.
448. stat.setString(1, tPendaftaran.getText());
449. stat.setString(2, tNamalengkap.getText());
450. String jkel = "";
451. if(rbLaki.isSelected()){
452. jkel="Laki-Laki";
453. }else{
454. jkel="Perempuan";
455. }
456.
457. stat.setString(3, jkel);
458. stat.setString(4, tMasukkanUsia.getText());
459.
460. statusHitung();
461. String hit = Double.toString(getHitung());
462. stat.setString(5, hit);
463. stat.setString(6, getKet());
464.
465.
466. stat.executeUpdate();
467. JOptionPane.showMessageDialog(null, "DATA Berhasil
Disimpan");
468. kosong();
469. tMasukkanUsia.requestFocus();
470. datatable();
471. }catch (SQLException e){
472. JOptionPane.showMessageDialog(null, "Data Gagal Disimpan
"+e);
473. }
474.
475. }
476.
477. private void bClearActionPerformed(java.awt.event.ActionEvent evt) {
478. // TODO add your handling code here:
479. datatable();
480. kosong();
481. statusKosong();
482. }
483.
484. private void bHapusActionPerformed(java.awt.event.ActionEvent evt) {
485. // TODO add your handling code here:
486. int ok = JOptionPane.showConfirmDialog(null,"hapus","Konfirmasi
Dialog",JOptionPane.YES_NO_CANCEL_OPTION);
487. if(ok == 0){
488. String SQL = "DELETE FROM seleksi WHERE
no_pendaftar='"+tPendaftaran.getText()+"'";
489. try{
490. PreparedStatement stat = conn.prepareStatement(SQL);
491.
492. stat.executeUpdate();
493. JOptionPane.showMessageDialog(null, "Data Berhasil diUbah
");
494. kosong();
495. tMasukkanUsia.requestFocus();
496. datatable();
497. }catch(SQLException e){
498. JOptionPane.showMessageDialog(null,"Data Gagal DiUbah " +
e);
499. }
500. }
501. }
502.
503. private void bEditActionPerformed(java.awt.event.ActionEvent evt) {
504. // TODO add your handling code here:
505.
506. try{
507. String SQL = "UPDATE seleksi set namalengkap=?,
jeniskelamin=?, umur=?, hasil_akhir=?, keterangan=? WHERE no_pendaftar=?";
508. PreparedStatement stat = conn.prepareStatement(SQL);
509.
510. stat.setString(1, tNamalengkap.getText());
511. String jkel = "";
512. if(rbLaki.isSelected()){
513. jkel="Laki-Laki";
514. }else{
515. jkel="Perempuan";
516. }
517.
518. stat.setString(2, jkel);
519. stat.setString(3, tMasukkanUsia.getText());
520.
521.
522. statusHitung();
523. String hit = Double.toString(getHitung());
524. stat.setString(4, hit);
525. stat.setString(5, getKet());
526. stat.setString(6, tPendaftaran.getText());
527.
528. stat.executeUpdate();
529. JOptionPane.showMessageDialog(null, "Data Berhasil diUbah ");
530. kosong();
531. tMasukkanUsia.requestFocus();
532. datatable();
533. }catch(SQLException e){
534. JOptionPane.showMessageDialog(null,"Data Gagal DiUbah " + e);
535. }
536. }
537.
538. private void tableKelasMouseClicked(java.awt.event.MouseEvent evt) {
539. // TODO add your handling code here:
540. int bar = tableKelas.getSelectedRow();
541. String a = tabmode.getValueAt(bar, 0).toString();
542. String b = tabmode.getValueAt(bar, 1).toString();
543. String c = tabmode.getValueAt(bar, 2).toString();
544. String d = tabmode.getValueAt(bar, 3).toString();
545.
546.
547. tPendaftaran.setText(a);
548. tNamalengkap.setText(b);
549. if(c.equals("Laki-Laki")){
550. rbLaki.setSelected(true);
551. rbPerempuan.setSelected(false);
552. }else{
553. rbLaki.setSelected(false);
554. rbPerempuan.setSelected(true);
555. }
556. tMasukkanUsia.setText(d);
557.
558.
559. }
560.
561. private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
{
562. popup_siswa1 ppa = new popup_siswa1();
563. ppa.datasiswabaru = this;
564. ppa.setVisible(true);
565. ppa.setResizable(false);
566. }
567.
568.
569. // Variables declaration - do not modify
570. private javax.swing.JLabel Judul1;
571. private javax.swing.JButton bClear;
572. private javax.swing.JButton bEdit;
573. private javax.swing.JButton bHapus;
574. private javax.swing.JButton bSimpan;
575. private javax.swing.ButtonGroup buttonGroup1;
576. private javax.swing.JButton jButton1;
577. private javax.swing.JEditorPane jEditorPane1;
578. private javax.swing.JPanel jPanel1;
579. private javax.swing.JPanel jPanel2;
580. private javax.swing.JPanel jPanel3;
581. private javax.swing.JScrollPane jScrollPane1;
582. private javax.swing.JScrollPane jScrollPane2;
583. private javax.swing.JLabel judul2;
584. private javax.swing.JLabel kdKelas;
585. private javax.swing.JLabel kdMapel;
586. private javax.swing.JLabel keterangan;
587. private javax.swing.JLabel nilaiAkhir;
588. private javax.swing.JLabel nis;
589. private javax.swing.JPanel panelStatusNilai;
590. private javax.swing.JRadioButton rbLaki;
591. private javax.swing.JRadioButton rbPerempuan;
592. private javax.swing.JLabel statusKet;
593. private javax.swing.JLabel statusNilai;
594. private javax.swing.JTextField tMasukkanUsia;
595. private javax.swing.JTextField tNamalengkap;
596. private javax.swing.JTextField tPendaftaran;
597. private javax.swing.JTable tableKelas;
598. private javax.swing.JLabel tugasHarian;
599. // End of variables declaration
600. }
LAMPIRAN

Anda mungkin juga menyukai