Uploaded by Xaphyra Aura Shava Aulia

PaperKelompok8 PTIB19

advertisement
LAPORAN TUGAS AKHIR
PEMROGRAMAN BERORIENTASI OBJEK
“Application of Film Profile”
Rista Bramastya#1, Sigit Purnomo#2, Xaphyra Aura Shava Aulia#3
Jurusan Pendidikan Teknik Informatika, Fakultas Teknik, Universitas Negeri Malang
ristabramastya04@gmail.com1, sighidpoernamma97@gmail.com2, aurashava33@gmail.com3
Abstrak
Film adalah media komunikasi yang bersifat audio visual untuk menyampaikan suatu pesan kepada
sekelompok orang yang berkumpul di suatu tempat tertentu. Setiap film diproduksi untuk dipasarkan sesuai
target pasarnya masing-masing, mulai dari anak-anak hingga orang dewasa. Banyak dari kalangan anakanak yang berusia dibawah 15 tahun ingin menonton film yang tidak sesuai dengan ketentuan usianya.
Program aplikasi profile film adalah sebuah program aplikasi yang menyediakan sebuah info film yang
terdapat informasi seperti: judul film, nama pemain, link synopsis, dan link untuk menonton film. Dalam
aplikasi ini terdapat berbagai pilihan kategori judul film yang mungkin akan dipilih user. Terdapat pilihan
kategori usia sehingga memudahkan user dalam memilih film yang sesuai dengan usianya.
Kata kunci : film, kategori film, batasan usia
I.
PENDAHULUAN
Film adalah media komunikasi yang
bersifat audio visual untuk menyampaikan suatu
pesan kepada sekelompok orang yang berkumpul
di suatu tempat tertentu. (Effendy, 1986: 134).
Dengan gambar dan suara, film mampu bercerita
banyak dalam waktu singkat. Ketika menonton
film penonton seakan-akan dapat menembus
ruang dan waktu yang dapat menceritakan
kehidupan dan bahkan dapat mempengaruhi
audiens.
Pada dasarnya film dapat dikelompokan
ke dalam dua pembagian dasar, yaitu kategori
film cerita dan non cerita. Film cerita adalah film
yang diproduksi berdasarkan cerita yang
dikarang, dan dimainkan oleh aktor dan aktris.
Pada umumnya film cerita bersifat komersial,
artinya dipertunjukan di bioskop dengan harga
karcis tertentu atau diputar di televisi dengan
dukungan sponsor iklan tertentu. Film non cerita
adalah film yang mengambil kenyataan sebagai
subyeknya, yaitu merekam kenyataan dari pada
fiksi tentang kenyataan. (Sumarno, 1996:10).
Setiap film diproduksi untuk dipasarkan sesuai
target pasarnya masing-masing, mulai dari anakanak hingga orang dewasa. Banyak dari kalangan
anak-anak yang berusia dibawah 15 tahun ingin
menonton film yang tidak sesuai dengan
ketentuan usianya.
Program aplikasi Profile Films adalah
sebuah program aplikasi yang menyediakan
sebuah info film yang terdapat informasi seperti:
judul film, nama pemain, link synopsis, dan link
untuk menonton film. Program aplikasi ini juga
berguna untuk membantu orang tua dalam
menyajikan sebuah film kepada anak-anaknya
sesuai dengan ketentuan usia
II.
DASAR TEORI
2.1. Konsep Dasar Sistem
Pada program Aplikasi Profile Fim akan dibuat
menggunakan bahasa java dalam pemrograman
berorienrasi objek. Pemrograman berorientasi
objek (PBO) adalah paradigma pemrograman
yang berorientasikan kepada objek yang
merupakan suatu metode dalam pembuatan
program, dengan tujuan untuk menyelesaikan
kompleksnya berbagai masalah meningkat.
Java adalah bahasa pemrograman yang multi
platform dan multi device, aplikasi-aplikasi
berbasis java umumnya dikompilasi ke dalam pcode (bytecode) dan dapat dijalankan pada
berbagai Mesin Virtual Java (JVM). Java
merupakan bahasa pemrograman yang bersifat
umum/non-spesifik (general purpose), dan secara
khusus didisain untuk memanfaatkan dependensi
implementasi seminimal mungkin dan java
secara luas dimanfaatkan dalam pengembangan
berbagai jenis perangkat lunak aplikasi ataupun
aplikasi.
2.2. Alat Bantu Pengembangan Sistem
Aplikasi ini menggunakan alat bantu
pengembangan perangkat lunak pemrograman
bahasa java yaitu software NetBeans IDE 8.0.2.
Software tersebut digunakan untuk mendesign
sekaligus meng-coding pogram. Pada program
Aplikasi Profil Film juga menggunakan database
untuk menyimpan data-data yang diinputkan,
sehingga
pengembang
menggunakan
phpMyAdmin yang merupakan perangkat lunak
yang ditulis dalam bahasa pemrograman PHP
untuk mengelola basis data dalam MySQL.
III.
PERANCANGAN
3.1. Rancangan program Profile Films yang
dikembangkan adalah sebuah aplikasi yang
dibuat dengan dasar pemrograman
berorientasi objek. Dasar pembuatan
aplikasi ini adalah dengan teori-teori yang
diambil dari beberapa referensi yang berasal
dari modul praktikum serta buku dan
sekaligus pemahaman dari rekan sebaya.
Dalam isi konteks program ini, juga
mengambil teori-teori mengenai sistem
database yang baik dan benar. Dalam
program ini, terdapat menu-menu seperti
login, menu utama, serta tampilan dari profil
film.
3.2. Desain Aplikasi
IV.
PEMBAHASAN
Implementasi
sistem
dibangun
menggunakan bahasa pemrograman java dengan
menggunakan kerangka kerja NetBeans untuk
membangun program yang berbasis GUI.
Implementasi ini terdiri dari beberapa antarmuka
untuk menjalankan fungsionalitas sistem,
menampilkan informasi serta memilah pengakses
program.
Apabila inputan nama berupa angka
maka
program
secara
otomatis
akan
menampilkan peringatan berupa “Inputan nama
tidak boleh angka”.
Secara umum, program Profile Films ini
hanya menampilkan 3 bagian, yaitu Login, Menu
Utama, dan Tampilan Informasi. Rancangan
Tampilan Awal adalah sebagai berikut:
Gambar 4.3 Inputan Nama Kosong
Apabila inputan nama kosong maka
program secara otomatis akan menampilkan
peringatan berupa “Inputan nama tidak boleh
kosong”.
Gambar 4.1 Tampilan Awal
Rancangan tampilan awal program
dengan menerapkan program login untuk
memilah pengakses program.
Gambar 4.4 Menu Usia Kurang Dari 15
Tahun
Tampilan di atas muncul apabila
pengakses berusia di bawah 15 tahun, maka
program akan menampilkan daftar film sesuai
usia mereka.
Gambar 4.2 Inputan Nama Berupa
Angka
Gambar 4.5 Daftar Film Dalam Negeri
Tampilan di atas muncul apabila
pengakses memilih kategori film dalam negeri,
maka akan ditampilkan daftar film sesuai
kategori.
Gambar 4.6 Daftar Film Luar Negeri
Tampilan di atas muncul apabila
pengakses memilih kategori film luar negeri,
maka akan ditampilkan daftar film sesuai
kategori.
Gambar 4.7 Menu Usia Diatas 15
Tahun
Tampilan di atas muncul apabila
pengakses berusia di atas 15 tahun, maka
program akan menampilkan daftar film sesuai
usia mereka.
Gambar 4.8 Daftar Film Romance
Tampilan di atas muncul apabila
pengakses memilih kategori film Romance, maka
akan ditampilkan daftar film sesuai kategori.
Gambar 4.11 Tampilan Informasi Film
Gambar 4.9 Daftar Film Horror
Tampilan di atas muncul apabila
pengakses memilih kategori film Horror, maka
akan ditampilkan daftar film sesuai kategori.
Tampilan ini muncul saat
pengakses menekan info yang sebelumnya telah
memilih kategori dan judul film, maka akan
ditampilkan informasi film yang diinginkan
Gambar 4.12 Tampilan Nama
Pengakses Program
Gambar 4.10 Daftar Film Comedy
Tampilan di atas muncul apabila pengakses
memilih kategori film Comedy, maka akan
ditampilkan daftar film sesuai kategori.
Tampilan nama pengakses program yang
langsung tersimpan pada database yang sudah
dibuat.
st = koneksi.stmt;
}
/**
* This method is called from
within the constructor to initialize
the form.
Gambar 4.13 Daftar Informasi Film
Daftar informasi film yang sebelumnya
telah diinputkan pada database yang telah dibuat,
sehingga pengakses akan mudah untuk
mendapatkan informasi yang diinginkan.
Source Code
* WARNING: Do NOT modify this
code. The content of this method is
always
* regenerated
Editor.
by
the
Form
*/
@SuppressWarnings("unchecked")
//
<editor-fold
defaultstate="collapsed"
desc="Generated
Code">//GENBEGIN:initComponents
a. Login.java
package rentingyuk;
private void initComponents() {
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public
class
Login
javax.swing.JFrame {
extends
Statement st;
public Login() {
initComponents();
koneksi.getConnection();
jLabel1
javax.swing.JLabel();
jButton1
javax.swing.JButton();
=
=
new
new
jComboBox1
=
javax.swing.JComboBox();
new
jLabel2
javax.swing.JLabel();
=
new
jLabel3
javax.swing.JLabel();
=
new
jLabel4
javax.swing.JLabel();
=
new
jLabel5
javax.swing.JLabel();
=
new
jTextField1
=
javax.swing.JTextField();
new
jLabel6
javax.swing.JLabel();
new
=
jLabel7
javax.swing.JLabel();
=
new
setDefaultCloseOperation(javax.swin
g.WindowConstants.EXIT_ON_CLOSE);
setTitle("PROFILEFILM.COM");
setBackground(new
java.awt.Color(65, 220, 220));
tahun", "lebih dari 15 tahun", " "
}));
jComboBox1.addActionListener(new
java.awt.event.ActionListener() {
public
void
actionPerformed(java.awt.event.Acti
onEvent evt) {
jComboBox1ActionPerformed(evt);
}
jLabel1.setText("jLabel1");
});
jButton1.setBackground(new
java.awt.Color(255, 255, 255));
jLabel2.setFont(new
java.awt.Font("Tahoma", 1, 36)); //
NOI18N
jButton1.setFont(new
java.awt.Font("Times New Roman", 1,
24)); // NOI18N
jLabel2.setForeground(new
java.awt.Color(0, 0, 255));
jButton1.setIcon(new
javax.swing.ImageIcon(getClass().ge
tResource("/rentingyuk/ll.jpg")));
// NOI18N
jButton1.setText("Tampil");
jButton1.addActionListener(new
java.awt.event.ActionListener() {
public
void
actionPerformed(java.awt.event.Acti
onEvent evt) {
jButton1ActionPerformed(evt);
jLabel2.setText("PROFILE
FILMS");
jLabel4.setFont(new
java.awt.Font("Tahoma", 2, 18)); //
NOI18N
jLabel4.setText("Lengkapi
data diri anda !");
jLabel5.setFont(new
java.awt.Font("Times New Roman", 0,
24)); // NOI18N
jLabel5.setText("Nama ");
}
});
jComboBox1.setFont(new
java.awt.Font("Times New Roman", 0,
24)); // NOI18N
jComboBox1.setModel(new
javax.swing.DefaultComboBoxModel(ne
w String[] { "Pilih", "kurang dari 15
jTextField1.setFont(new
java.awt.Font("Times New Roman", 0,
24)); // NOI18N
jTextField1.addActionListener(new
java.awt.event.ActionListener() {
public
void
actionPerformed(java.awt.event.Acti
onEvent evt) {
.addComponent(jLabel3)
.addGap(170, 170, 170)
jTextField1ActionPerformed(evt);
.addComponent(jLabel7,
javax.swing.GroupLayout.PREFERRED_S
IZE,
229,
javax.swing.GroupLayout.PREFERRED_S
IZE))
}
});
jLabel6.setFont(new
java.awt.Font("Times New Roman", 0,
24)); // NOI18N
jLabel6.setText("Usia");
jLabel7.setIcon(new
javax.swing.ImageIcon(getClass().ge
tResource("/rentingyuk/ta.jpg")));
// NOI18N
jLabel7.setText("jLabel7");
javax.swing.GroupLayout
layout
=
new
javax.swing.GroupLayout(getContentP
ane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.sw
ing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGr
oup()
.addComponent(jLabel4,
javax.swing.GroupLayout.PREFERRED_S
IZE,
228,
javax.swing.GroupLayout.PREFERRED_S
IZE))
.addGap(0,
Short.MAX_VALUE))
0,
.addGroup(layout.createSequentialGr
oup()
.addGroup(layout.createParallelGrou
p(javax.swing.GroupLayout.Alignment
.LEADING)
.addGroup(layout.createSequentialGr
oup()
.addGap(153, 153, 153)
.addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
102,
javax.swing.GroupLayout.PREFERRED_S
IZE))
.addGap(33, 33, 33)
.addGroup(layout.createParallelGrou
p(javax.swing.GroupLayout.Alignment
.LEADING)
.addGroup(layout.createSequentialGr
oup()
.addGroup(layout.createSequentialGr
oup()
.addGap(186, 186, 186)
.addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_S
IZE,
293,
javax.swing.GroupLayout.PREFERRED_S
IZE)))
.addContainerGap(61,
Short.MAX_VALUE))
.addGroup(javax.swing.GroupLayout.A
lignment.TRAILING,
layout.createSequentialGroup()
.addGap(58, 58, 58)
.addComponent(jComboBox1,
Short.MAX_VALUE))
0,
352,
.addGap(41, 41, 41))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.sw
ing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGrou
p(javax.swing.GroupLayout.Alignment
.LEADING)
.addGroup(layout.createSequentialGr
oup()
.addComponent(jLabel5,
javax.swing.GroupLayout.PREFERRED_S
IZE,
66,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
0,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addComponent(jLabel6,
javax.swing.GroupLayout.PREFERRED_S
IZE,
54,
javax.swing.GroupLayout.PREFERRED_S
IZE))
.addPreferredGap(javax.swing.Layout
Style.ComponentPlacement.UNRELATED)
.addPreferredGap(javax.swing.Layout
Style.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZ
E, Short.MAX_VALUE)
.addGroup(layout.createParallelGrou
p(javax.swing.GroupLayout.Alignment
.LEADING, false)
.addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
173,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addComponent(jTextField1)
.addContainerGap()
.addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_S
IZE,
30,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addGroup(layout.createParallelGrou
p(javax.swing.GroupLayout.Alignment
.LEADING)
.addGroup(layout.createSequentialGr
oup()
.addGap(220, 220, 220)
.addComponent(jLabel3)
.addGap(16,
16, 16))
.addGroup(javax.swing.GroupLayout.A
lignment.TRAILING,
layout.createSequentialGroup()
.addPreferredGap(javax.swing.Layout
Style.ComponentPlacement.RELATED)
javax.swing.GroupLayout.DEFAULT_SIZ
E,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addComponent(jLabel6))
.addComponent(jLabel7)
.addPreferredGap(javax.swing.Layout
Style.ComponentPlacement.UNRELATED)
))
.addComponent(jLabel4,
javax.swing.GroupLayout.PREFERRED_S
IZE,
20,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGrou
p(javax.swing.GroupLayout.Alignment
.BASELINE)
.addComponent(jLabel5,
javax.swing.GroupLayout.PREFERRED_S
IZE,
23,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addComponent(jTextField1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
javax.swing.GroupLayout.DEFAULT_SIZ
E,
javax.swing.GroupLayout.PREFERRED_S
IZE))
.addGap(60, 60, 60)
.addPreferredGap(javax.swing.Layout
Style.ComponentPlacement.RELATED,
94, Short.MAX_VALUE)
.addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
31,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addGap(77, 77, 77))
);
pack();
}//
</editor-fold>//GENEND:initComponents
private
void
jButton1ActionPerformed(java.awt.ev
ent.ActionEvent
evt)
{//GENFIRST:event_jButton1ActionPerformed
String
jTextField1.getText();
x
=
if(x.equals("")){
.addGroup(layout.createParallelGrou
p(javax.swing.GroupLayout.Alignment
.BASELINE)
JOptionPane.showMessageDialog(null,
"Inputan nama tidak boleh kosong",
"Pesan
Peringatan",
JOptionPane.WARNING_MESSAGE);
.addComponent(jComboBox1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
}else if(!x.matches ("^[a-zAZ]+$")){
JOptionPane.showMessageDialog(null,
"Inputan nama tidak boleh angka",
"Pesan
Peringatan",
JOptionPane.WARNING_MESSAGE);
}else{
try {
st.executeUpdate("INSERT INTO akses
values('"+jTextField1.getText()+"')
");
}
catch
(SQLException
}//GENLAST:event_jComboBox1ActionPerforme
d
private
void
jTextField1ActionPerformed(java.awt
.event.ActionEvent
evt)
{//GENFIRST:event_jTextField1ActionPerfor
med
}//GENLAST:event_jTextField1ActionPerform
ed
ex) {
Logger.getLogger(Login.class.getNam
e()).log(Level.SEVERE, null, ex);
}
int
a
jComboBox1.getSelectedIndex();
=
dispose();
Menu nak = new Menu(a);
nak.show();
}
public static void main(String
args[]) {
//<editor-fold
defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in
Java SE 6) is not available, stay
with the default look and feel.
*
For
details
see
http://download.oracle.com/javase/t
utorial/uiswing/lookandfeel/plaf.ht
ml
*/
try {
}//GENLAST:event_jButton1ActionPerformed
for
(javax.swing.UIManager.LookAndFeelI
nfo
info
:
javax.swing.UIManager.getInstalledL
ookAndFeels()) {
if
("Nimbus".equals(info.getName())) {
private
void
jComboBox1ActionPerformed(java.awt.
event.ActionEvent
evt)
{//GENFIRST:event_jComboBox1ActionPerform
ed
//
code here:
TODO
add
your
javax.swing.UIManager.setLookAndFee
l(info.getClassName());
break;
handling
}
}
}
(ClassNotFoundException ex) {
catch
java.util.logging.Logger.getLogger(
Login.class.getName()).log(java.uti
l.logging.Level.SEVERE, null, ex);
}
(InstantiationException ex) {
catch
java.util.logging.Logger.getLogger(
Login.class.getName()).log(java.uti
l.logging.Level.SEVERE, null, ex);
}
(IllegalAccessException ex) {
catch
private
jLabel3;
javax.swing.JLabel
private
jLabel4;
javax.swing.JLabel
private
jLabel5;
javax.swing.JLabel
private
jLabel6;
javax.swing.JLabel
private
jLabel7;
javax.swing.JLabel
private
jTextField1;
//
End
of
variables
declaration//GEN-END:variables
java.util.logging.Logger.getLogger(
Login.class.getName()).log(java.uti
l.logging.Level.SEVERE, null, ex);
}
catch
(javax.swing.UnsupportedLookAndFeel
Exception ex) {
java.util.logging.Logger.getLogger(
Login.class.getName()).log(java.uti
l.logging.Level.SEVERE, null, ex);
javax.swing.JTextField
static class setVisible {
public setVisible(boolean b)
{
}
}
}
b. Menu.java
}
//</editor-fold>
package view;
new
Login().setVisible(true);
}
import java.sql.SQLException;
import java.util.logging.Level;
// Variables declaration - do not
modify//GEN-BEGIN:variables
private
jButton1;
javax.swing.JButton
private
jComboBox1;
javax.swing.JComboBox
private
jLabel1;
javax.swing.JLabel
private
jLabel2;
javax.swing.JLabel
import java.util.logging.Logger;
import
javax.swing.DefaultComboBoxModel;
public
class
Menu
javax.swing.JFrame {
static String film;
int pilihan;
extends
public Menu(int pilihan) {
initComponents();
String[] a = {"Pilih","Dalam
Negeri","Luar Negeri" };
String[]
b
=
{"Pilih","Romance","Horror","Comedy
" };
this.pilihan = pilihan;
if(pilihan == 1){
DefaultComboBoxModel model =
new DefaultComboBoxModel(a);
jComboBox1
=
javax.swing.JComboBox();
new
jLabel1
javax.swing.JLabel();
=
new
jLabel2
javax.swing.JLabel();
=
new
jLabel3
javax.swing.JLabel();
=
new
jComboBox2
=
javax.swing.JComboBox();
new
jButton1
javax.swing.JButton();
new
=
jComboBox1.setModel(model);
jLabel4
javax.swing.JLabel();
=
new
}else if(pilihan == 2){
jLabel5
javax.swing.JLabel();
=
new
DefaultComboBoxModel model =
new DefaultComboBoxModel(b);
jComboBox1.setModel(model);
}
setDefaultCloseOperation(javax.swin
g.WindowConstants.EXIT_ON_CLOSE);
}
jPanel1.setBackground(new
java.awt.Color(0, 204, 204));
Menu() {
throw
new
UnsupportedOperationException("Not
supported yet.");
jPanel1.setFont(new
java.awt.Font("Times New Roman", 0,
14)); // NOI18N
}
jComboBox1.setFont(new
java.awt.Font("Times New Roman", 0,
24)); // NOI18N
@SuppressWarnings("unchecked")
//
<editor-fold
defaultstate="collapsed"
desc="Generated
Code">//GENBEGIN:initComponents
private void initComponents() {
jPanel1
javax.swing.JPanel();
=
new
jComboBox1.setModel(new
javax.swing.DefaultComboBoxModel(ne
w String[] { "Pilih", "Dalam Negeri.
Luar Negeri" }));
jComboBox1.addActionListener(new
java.awt.event.ActionListener() {
public
void
actionPerformed(java.awt.event.Acti
onEvent evt) {
jComboBox1ActionPerformed(evt);
}
jButton1.setBackground(new
java.awt.Color(255, 255, 255));
jButton1.setFont(new
java.awt.Font("Times New Roman", 1,
24)); // NOI18N
});
jLabel1.setFont(new
java.awt.Font("Tahoma", 1, 36)); //
NOI18N
jLabel1.setText("YUK
NONTON");
jLabel2.setFont(new
java.awt.Font("Times New Roman", 0,
24)); // NOI18N
jLabel2.setText("Kategori
Film");
jButton1.setIcon(new
javax.swing.ImageIcon(getClass().ge
tResource("/rentingyuk/info.jpg")))
; // NOI18N
jButton1.setText("Info");
jButton1.addActionListener(new
java.awt.event.ActionListener() {
public
void
actionPerformed(java.awt.event.Acti
onEvent evt) {
jButton1ActionPerformed(evt);
jLabel3.setFont(new
java.awt.Font("Times New Roman", 0,
24)); // NOI18N
}
});
jLabel3.setText("Judul
Film");
jComboBox2.setFont(new
java.awt.Font("Times New Roman", 0,
24)); // NOI18N
jComboBox2.setModel(new
javax.swing.DefaultComboBoxModel(ne
w String[] { "Pilih", "Item 2", "Item
3", "Item 4" }));
jComboBox2.addActionListener(new
java.awt.event.ActionListener() {
public
void
actionPerformed(java.awt.event.Acti
onEvent evt) {
jComboBox2ActionPerformed(evt);
jLabel4.setFont(new
java.awt.Font("Times New Roman", 2,
24)); // NOI18N
jLabel4.setText("Yuk Dipilih
");
jLabel5.setIcon(new
javax.swing.ImageIcon(getClass().ge
tResource("/rentingyuk/television4069510_1920-820x500.jpg")));
//
NOI18N
jLabel5.setText("jLabel5");
javax.swing.GroupLayout
jPanel1Layout
=
new
javax.swing.GroupLayout(jPanel1);
}
});
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(j
avax.swing.GroupLayout.Alignment.LE
ADING)
.addGroup(jPanel1Layout.createSeque
ntialGroup()
.addGroup(jPanel1Layout.createParal
lelGroup(javax.swing.GroupLayout.Al
ignment.LEADING)
.addGroup(jPanel1Layout.createSeque
ntialGroup()
.addGroup(jPanel1Layout.createSeque
ntialGroup()
.addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_S
IZE,
154,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addGap(104, 104, 104)
.addGroup(jPanel1Layout.createParal
lelGroup(javax.swing.GroupLayout.Al
ignment.LEADING, false)
.addGap(170, 170, 170)
.addComponent(jComboBox2,
0,
javax.swing.GroupLayout.DEFAULT_SIZ
E, Short.MAX_VALUE)
.addComponent(jLabel5,
javax.swing.GroupLayout.PREFERRED_S
IZE,
300,
javax.swing.GroupLayout.PREFERRED_S
IZE))
.addComponent(jComboBox1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
277,
javax.swing.GroupLayout.PREFERRED_S
IZE)))))
.addGroup(jPanel1Layout.createSeque
ntialGroup()
.addGroup(jPanel1Layout.createSeque
ntialGroup()
.addGap(40,
40, 40)
.addGap(192, 192, 192)
.addGroup(jPanel1Layout.createParal
lelGroup(javax.swing.GroupLayout.Al
ignment.LEADING)
.addComponent(jLabel1))
.addComponent(jLabel4,
javax.swing.GroupLayout.PREFERRED_S
IZE,
130,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addComponent(jLabel3,
javax.swing.GroupLayout.PREFERRED_S
IZE,
112,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addGroup(jPanel1Layout.createSeque
ntialGroup()
.addGap(223, 223, 223)
.addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
178,
javax.swing.GroupLayout.PREFERRED_S
IZE)))
.addContainerGap(70,
Short.MAX_VALUE))
);
lelGroup(javax.swing.GroupLayout.Al
ignment.BASELINE)
.addComponent(jLabel3)
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(j
avax.swing.GroupLayout.Alignment.LE
ADING)
.addComponent(jComboBox2,
javax.swing.GroupLayout.PREFERRED_S
IZE,
javax.swing.GroupLayout.DEFAULT_SIZ
E,
javax.swing.GroupLayout.PREFERRED_S
IZE))
.addGroup(jPanel1Layout.createSeque
ntialGroup()
.addGap(27, 27, 27)
.addComponent(jLabel1)
.addPreferredGap(javax.swing.Layout
Style.ComponentPlacement.UNRELATED)
.addComponent(jLabel5)
.addGap(13, 13, 13)
.addGap(67, 67, 67)
.addComponent(jButton1)
.addContainerGap(103,
Short.MAX_VALUE))
);
javax.swing.GroupLayout
layout
=
new
javax.swing.GroupLayout(getContentP
ane());
.addComponent(jLabel4)
.addGap(18, 18, 18)
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
.addGroup(jPanel1Layout.createParal
lelGroup(javax.swing.GroupLayout.Al
ignment.TRAILING)
.addComponent(jComboBox1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
javax.swing.GroupLayout.DEFAULT_SIZ
E,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addComponent(jLabel2))
.addGap(26, 26, 26)
.addGroup(jPanel1Layout.createParal
layout.createParallelGroup(javax.sw
ing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.A
lignment.TRAILING,
layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZ
E,
javax.swing.GroupLayout.DEFAULT_SIZ
E, Short.MAX_VALUE)
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.sw
ing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.A
lignment.TRAILING,
layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZ
E,
javax.swing.GroupLayout.DEFAULT_SIZ
E, Short.MAX_VALUE)
.addContainerGap())
);
pack();
}//
</editor-fold>//GENEND:initComponents
String[]
dalamNegeri
=
{"Pilih","Garuda di Dadaku","Tanah
Air
Beta",
"5
Elang",
"Laskar
Pelangi","Koki Cilik" };
String[]
luarNegeri
=
{"Pilih",
"Children
of
Heaven","Grave
of
the
Fireflies","Little Nicholas", "The
Polar Express","The Incredibles" };
if(pilihan == 2){
if
(jComboBox1.getSelectedIndex()
0){
==
DefaultComboBoxModel model =
new DefaultComboBoxModel(c);
jComboBox2.setModel(model);
}else
if(jComboBox1.getSelectedIndex()
1){
==
DefaultComboBoxModel
model = new DefaultComboBoxModel(c);
jComboBox2.setModel(model);
private
void
jComboBox1ActionPerformed(java.awt.
event.ActionEvent
evt)
{//GENFIRST:event_jComboBox1ActionPerform
ed
String[]
c
=
{"Pilih","DILAN","TEMAN
TAPI
MENIKAH","ROMAN
PICISAN","ENDLESS
LOVE","THE VOW"};
String[]
d
=
{"Pilih","SEBELUM
IBLIS
MENJEMPUT","DANUR","IT","DOCTOR
SLEEP","PENGABDI SETAN"};
String[] e = {"Pilih","MY
STUPID BOSS","YOWIS BEN","CEK TOKO
SEBELAH","WARKOP DKI REBORN","MILLY
& MAMET"};
}else
if(jComboBox1.getSelectedIndex()
2){
==
DefaultComboBoxModel
model = new DefaultComboBoxModel(d);
jComboBox2.setModel(model);
}else
if(jComboBox1.getSelectedIndex()
3){
==
DefaultComboBoxModel
model = new DefaultComboBoxModel(e);
jComboBox2.setModel(model);
}
}else if (pilihan == 1){
if
(jComboBox1.getSelectedIndex()
0){
try {
==
new View().show();
} catch (SQLException ex) {
DefaultComboBoxModel model =
new
DefaultComboBoxModel(dalamNegeri);
jComboBox2.setModel(model);
}else
if(jComboBox1.getSelectedIndex()
1){
}
==
DefaultComboBoxModel
model
=
new
DefaultComboBoxModel(dalamNegeri);
jComboBox2.setModel(model);
}else
if(jComboBox1.getSelectedIndex()
2){
Logger.getLogger(Menu.class.getName
()).log(Level.SEVERE, null, ex);
==
DefaultComboBoxModel
model
=
new
DefaultComboBoxModel(luarNegeri);
}//GENLAST:event_jButton1ActionPerformed
private
void
jComboBox2ActionPerformed(java.awt.
event.ActionEvent
evt)
{//GENFIRST:event_jComboBox2ActionPerform
ed
//
code here:
TODO
add
your
handling
}//GENLAST:event_jComboBox2ActionPerforme
d
jComboBox2.setModel(model);
/**
}
* @param args the command line
arguments
}
}//GENLAST:event_jComboBox1ActionPerforme
d
private
void
jButton1ActionPerformed(java.awt.ev
ent.ActionEvent
evt)
{//GENFIRST:event_jButton1ActionPerformed
//
code here:
TODO
add
your
*/
public static void main(String
args[]) {
java.awt.EventQueue.invokeLater(new
Runnable() {
@Override
public void run() {
handling
film=(String)
jComboBox2.getSelectedItem();
new
Menu().setVisible(true);
}
});
dispose();
}
int a=1;
// Variables declaration - do not
modify//GEN-BEGIN:variables
private
jButton1;
javax.swing.JButton
private
jComboBox1;
javax.swing.JComboBox
private
jComboBox2;
javax.swing.JComboBox
private
jLabel1;
javax.swing.JLabel
private
jLabel2;
javax.swing.JLabel
private
jLabel3;
javax.swing.JLabel
private
jLabel4;
javax.swing.JLabel
private
jLabel5;
javax.swing.JLabel
private
jPanel1;
javax.swing.JPanel
private Object jTextField1;
public
SQLException {
View()
throws
initComponents();
DefaultTableModel
(DefaultTableModel)
jTable1.getModel();
dtm
=
dtm.setRowCount(0);
String
String[10];
data[]=new
koneksi.getConnection();
String pilem= Menu.film;
//
End
of
variables
declaration//GEN-END:variables
koneksi.sql = "SELECT * FROM
list_film
where
judul
like
'"+pilem+"'";
koneksi.rs
=
koneksi.stmt.executeQuery(koneksi.s
ql);
while(koneksi.rs.next()){
}
data[0]=koneksi.rs.getString("judul
");
c. View.java
package rentingyuk;
data[1]=koneksi.rs.getString("pemai
n_utama");
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import
javax.swing.table.DefaultTableModel
;
data[2]=koneksi.rs.getString("link_
sinopsis");
data[3]=koneksi.rs.getString("link_
film");
dtm.addRow(data);
public
class
View
javax.swing.JFrame {
extends
String data[]=new String[10];
}
koneksi.stmt.close();
jTable1.setFont(new
java.awt.Font("Times New Roman", 0,
14)); // NOI18N
}
@SuppressWarnings("unchecked")
//
<editor-fold
defaultstate="collapsed"
desc="Generated
Code">//GENBEGIN:initComponents
jTable1.setModel(new
javax.swing.table.DefaultTableModel
(
new Object [][] {
{null,
null,
null,
null}
private void initComponents() {
},
new String [] {
jLabel2
javax.swing.JLabel();
=
new
jScrollPane2
=
javax.swing.JScrollPane();
new
jTable1
javax.swing.JTable();
=
new
jLabel1
javax.swing.JLabel();
=
new
jButton1
javax.swing.JButton();
=
PEMAIN",
FILM"
"LINK
"JUDUL",
SINOPSIS",
"NAMA
"LINK
}
new
setDefaultCloseOperation(javax.swin
g.WindowConstants.EXIT_ON_CLOSE);
setBackground(new
java.awt.Color(0, 255, 204));
jLabel2.setBackground(new
java.awt.Color(204, 204, 204));
jLabel2.setFont(new
java.awt.Font("Colonna MT", 1, 36));
// NOI18N
jLabel2.setText("SELAMAT
MENONTON");
jTable1.setBackground(new
java.awt.Color(204, 204, 255));
));
jTable1.setRowHeight(85);
jScrollPane2.setViewportView(jTable
1);
jLabel1.setIcon(new
javax.swing.ImageIcon(getClass().ge
tResource("/rentingyuk/posteraja.pn
g"))); // NOI18N
jLabel1.setText("jLabel1");
jButton1.setBackground(new
java.awt.Color(255, 255, 255));
jButton1.setFont(new
java.awt.Font("Tahoma", 1, 18)); //
NOI18N
jButton1.setIcon(new
javax.swing.ImageIcon(getClass().ge
tResource("/rentingyuk/hom.png")));
// NOI18N
jButton1.setText("Home");
jButton1.addActionListener(new
java.awt.event.ActionListener() {
public
void
actionPerformed(java.awt.event.Acti
onEvent evt) {
jButton1ActionPerformed(evt);
}
});
lignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
176,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addGap(232, 232, 232))
javax.swing.GroupLayout
layout
=
new
javax.swing.GroupLayout(getContentP
ane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.sw
ing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGr
oup()
.addContainerGap(36,
Short.MAX_VALUE)
.addGroup(layout.createParallelGrou
p(javax.swing.GroupLayout.Alignment
.LEADING)
.addGroup(javax.swing.GroupLayout.A
lignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jScrollPane2,
javax.swing.GroupLayout.PREFERRED_S
IZE,
619,
javax.swing.GroupLayout.PREFERRED_S
IZE)
.addContainerGap())
.addGroup(javax.swing.GroupLayout.A
lignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jLabel2)
.addGap(116, 116, 116))))
);
.addGroup(javax.swing.GroupLayout.A
lignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_S
IZE,
330,
javax.swing.GroupLayout.PREFERRED_S
IZE)
layout.setVerticalGroup(
layout.createParallelGroup(javax.sw
ing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGr
oup()
.addGap(35, 35, 35)
.addGap(151, 151, 151))
.addComponent(jLabel2)
.addGroup(javax.swing.GroupLayout.A
.addGap(31, 31, 31)
}
(SQLException ex) {
.addComponent(jLabel1)
catch
.addGap(46, 46, 46)
.addComponent(jScrollPane2,
javax.swing.GroupLayout.PREFERRED_S
IZE,
115,
javax.swing.GroupLayout.PREFERRED_S
IZE)
Logger.getLogger(View.class.getName
()).log(Level.SEVERE, null, ex);
}
}
});
.addGap(58, 58, 58)
}
.addComponent(jButton1)
// Variables declaration - do not
modify//GEN-BEGIN:variables
.addContainerGap(95,
Short.MAX_VALUE))
);
pack();
}//
</editor-fold>//GENEND:initComponents
private
void
jButton1ActionPerformed(java.awt.ev
ent.ActionEvent
evt)
{//GENFIRST:event_jButton1ActionPerformed
private
jButton1;
javax.swing.JButton
private
jLabel1;
javax.swing.JLabel
private
jLabel2;
javax.swing.JLabel
private javax.swing.JScrollPane
jScrollPane2;
private
jTable1;
javax.swing.JTable
//
End
of
variables
declaration//GEN-END:variables
Login yuk = new Login();
yuk.show();
private void getSelectedIndex()
}//GENLAST:event_jButton1ActionPerformed
public
static
main(String args[]) {
void
{
throw
new
UnsupportedOperationException("Not
supported yet."); //To change body of
generated methods, choose Tools |
Templates.
}
java.awt.EventQueue.invokeLater(new
Runnable() {
public void run() {
try {
new
View().setVisible(true);
}
d. koneksi.java
package rentingyuk;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
import java.sql.DriverManager;
DAFTAR PUSTAKA
import java.sql.ResultSet;
[1].
import java.sql.SQLException;
public class koneksi {
static Statement stmt;
static ResultSet rs;
static String sql;
public
static
getConnection() {
Connection
Connection
connection
=
null;
String
driver
"com.mysql.jdbc.Driver";
=
String
url
=
"jdbc:mysql://localhost:3306/info_f
ilm"; //ganti dengan database mu
String user = "root";
String password ="";
if (connection == null) {
try {
Class.forName(driver);
connection
=(Connection)
DriverManager.getConnection(url,
user, password);
stmt = (Statement)
connection.createStatement();
}
(ClassNotFoundException
SQLException error) {
System.exit(0);
}
}
return connection;
}
}
catch
|
Ahmad Muhardian. 2016. Pemrograman
Java Swing: Membuat Jendela dengan
JFrame.
Diakses
(online)
:
https://www.petanikode.com/javaswing-jframe/ pada 1 Mei 2020
[2]. Arfadia, 2020. Keunggulan Java
Dibandingkan Bahasa Pemrograman
Lain.
https://blog.arfadia.com/keunggulanjava-dibandingkan-bahasapemrograman-lain/
[3]. Billah, Ersandi. 2019. Pengertian dan
Tahap Metode SDLC Waterfall .
https://medium.com/@ersandibillah03/s
dlc-waterfall-3a3c893be77b
[4]. Hendry, 2008. Belajar Otodidak Java
Dengan Netbeans. Jakarta : Elex Media
Komputindo.
[5]. Jogiyanto, HM. 2005. Analisis & Desain
Sistem
Informasi
:
Pendekatan
Tersruktur Teori dan Praktik Aplikasi
Bisnis. Yogyakarta : ANDI.
[6]. Purwanto, Arip. 2018. Konsep Dasar
Sistem
Informasi.
https://aripdwipurwanto.blogspot.com/2
018/01/konsep-dasar-sisteminformasi.html
[7]. Sujana, A. "Pengertian Java Dan
Fungsinya." (2014).
[8]. Stuck Overvlow dkk. 2014. Diakses
(online)
:
https://stackoverflow.com/questions/214
33374/exception-handling-in-gui pada 1
Mei 2020
[9]. RPL SMK. 2016. CARA MUDAH
UNTUK MENAMPILKAN GAMBAR DI
JAVA NETBEANS. Diakses (online) :
http://rplsmktutorial.blogspot.com/2016/
04/cara-menambahicon-di-javanetbeans.html pada 1 Mei 2020
[10]. Tim Asisten Praktikum. 2018. Modul 1-7
Praktikum Pemrograman Berorientasi
Objek. Malang: Universitas Negeri
Malang.
[11]. Siswaan. 2016. Menampilkan Data di
Database MySQL pada JTable Netbeans.
Diakses
(online)
:
https://kodingwae.blogspot.com/2016/0
6/menampilkan-data-di-database-mysqlpada.html pada 1 Mei 2020
[12]. Supardi, Yuniar. 2007. Pemrograman
Data Base dengan Java dan MySQL.
Jakarta : Elex Media Komputindo.
[13]. Unokwn.
2015.
Menyambungkan
Beberapa form di Netbeans. Diakses
(online)
:
http://programdesktop.blogspot.com/201
5/04/menyambungkan-beberapa-formdinetbeans.html pada 1 Mei 2020
Download