Minggu, 17 Desember 2017

Laporan Praktikum Algo dan Pemrograman II (JAVA) 14 : JAVA DATABASE CONNECTIVITY



  Assalamualaikum warahmatullahi wabarakatuh... Postingan ini saya buat untuk memenuhi tugas Laporan praktikum dari Dosen cantik saya Sundari Retno Andini, S.T,M.Kom selaku Dosen Algo dan Pemrograman II (JAVA).

JAVA  DATABASE CONNECTIVITY
JDBC (Java Database Connectivity)   merupakan trademark dari  Sun Microsystem   yg merupakan bagian dari teknologi JAVA yg menangani pengolahan database.  Java tidak membedakan cara pemrograman database yg satu dengan yg lainnya. Sebagai contoh : cara java mengolah Oracle dan MySQL sama saja, yg berbeda hanyalah alamat URL koneksi dan driver JDBC-nya, Sehinggan kida dapat membuat sebuah program yg ada di javaa untuk mengolah database yg ada di MySQL, Oracle, SQL Server dan pemrograman database lainnya, selama nama dan struktur tabelnya sama.
1.      KOMPONEN UTAMA JDBC
JDBC memiliki beberapa komponen utama yg berhubungan dengan koneksi driver, koneksi database, eksekusi perintah SQL dan lain2 komponen2 tsb antara lain adalah sebagai berikut :
a)      Driver adalah komponen untuk menangani masalah komunikasi dengan databasw server.
b)      Driver Manager adalah komponen untuk menangani objek driver dengan objek DriverManager juga mngendalikan detail dari proses kerja objek driver.
c)      Connection adalah komponen yg menangani koneksi ke database.
d)     Statement adalah komponen yg menangani pengiriman perintah SQL ke database.
e)      ResultSet adalah komponen yg menangani penyimpanan data yg didapat dari databse setelah perintah SQL dieksekusi oleh komponent Statement.
f)       SQLException adalah komponen yg difunakan untuk menangani kesalahan2 (error) yg mungkin terjadi dalam pengolahn database.

2.      KEUNGGULAN TEKNOLOGI JDBC

a.       Mempertahankan data yg ada.
b.      Meyederhanakan pembuatan aplikasi dengan kombinasi antara java API dan JDBC API.
c.       Tidak perlu melakukan konfigurasi jaringan computer clien.
d.      JDBC API memberi akses penuh pada metadata sehingga memngkinkan pengembangan aplikasi yg lebih canggih.
e.       JDBC driver tidak perlu diinstal karena murni bawaan Java
Langakah2 Praktikum
A.    Membuat database dengan menggunakan MySQL
1.      Simpan driver JDBC MySQL “mysql-connector-java.jar”  ke dalam folder_instalasi_java/jdk/jre/lib/ext
2.      Jalankan program MySQL
3.      Buatlah database dengan ketentuan sebagai berikut :
Nama Database           : Praktikum
Nama Tabel                 : mahasiswa, terdiri dari tiga field, yaiut NIM, Nama dan Alamat.
Syntax                         : create database praktikum;
                use praktikum;
               create table mahasiswa {   
               NIM varchar(9),
               Nama varchar(30),
               Alamat varchar(30)
                              }:
B.     Membuat databasw dengan menggunakan MS.Accsess
a.Jalankan Program Ms.Accsess
b.Buatlah database sebagai berikut :
Nama File  : Praktikum
Nama Table : mahasiswa, terdiri dari tiga field, yaiut NIM,
             Nama dan alamat yg semuanya bertipe text.

C. Membuat menu pemasukan dan penghapusan data dari database
praktikum. import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class CobaDatabase {
public static void main (String[] args) { DBMahasiswa mahasiswa = new DBMahasiswa ();
}
}

class DBMahasiswa extends JFrame implements ActionListener {
final JLabel lNim, lNama, lAlamat; final JTextField nim, nama, alamat;
final JButton btnSave, btnHapus;
final JPanel panel1, panel2;
public DBMahasiswa ()
{
setTitle (“Coba Database”);
lNim = new JLabel (“NIM : ");
lNama = new JLabel(“NAMA : “);
lAlamat = new JLabel(“ALAMAT :”);
nim = new JTextField(20);
nama = new JTextField(20);
alamat = new JTextField(20);
btnSave = new JButton(“SIMPAN”); btnSave.addActionListener(this); btnHapus = new JButton (“HAPUS”); btnHapus.addActionListener(this);
panel1 = new JPanel (new GridLayout (3,1) );
panel2 = new JPanel (new GridLayout (3,1) );
setLayout (new BorderLayout ()); add(panel1, “West”);
panel1.add(lNim);
panel1.add(lNama);
panel1.add(lAlamat);
add (panel2, “East”);
panel2.add(nim);
panel2.add(nama);
panel2.add(alamat);
add(btnSave, “South”);
add(btnHapus, “North”);
pack ();
setDefaultCloseOperation(3); setVisible(true);
}
public void actionPerformed(ActionEvent ae) {
if (ae.getSource () ==btnSave) {
String sql = “insert into mahasiswa values(‘”+nim.getText ()+”’, ‘”+nama.getText ()+”’, ‘”+alamat.getText ()+”’)”; try {
//Untuk database SQL Class.forName(“org.gjt.mm.mysql.Driver”); Connection con = DriverManager.getConnection(“jdbc:mysql:

//localhost/praktikum”, “root”, “”);
//Untuk database ACCESS /*Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
Connection con = DriverManager.getConnection(“jdbc:odbc:java”, “”, “”);*/ Statement stmt = con.createStatement(); stmt.executeUpdate (sql);
stmt.close();
con.close();
JOptionPane.showMessageDialog(this, “Data berhasil disimpan”, “Hasil”, JOptionPane.INFORMATION_MESSAGE);
} catch(Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage (), “Hasil”, JOptionPane.ERROR_MESSAGE);
}
}

if (ae.getSource ()==btnHapus)
{
int pesan = JOptionPane.showConfirmDialog(null, ”Anda yakin ingin menghapus pegawai\n”+”dengan NIM = ‘”+nim.getText() +”’”, “Konfirmasi Hapus Data”, JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if(pesan == JOptionPane.OK_OPTION) { String sql = “DELETE from mahasiswa where nim=’”+nim.getText()+”’”; try {
//Untuk database SQL Class.forName(“org.gjt.mm.mysql.Driver”); Connection con = DriverManager.getConnection(“jdbc:mysql:

//localhost/praktikum”,”root”,””);
//Untuk database ACCESS /*Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
Connection con = DriverManager.getConnection(“jdbc:odbc:java”,””,””);*
/ Statement stmt = con.createStatement ();
stmt.executeUpdate(sql);
stmt.close();
con.close();
JOptionPane.showMessageDialog(this, “Data berhasil dihapus”, “Hasil”, JOptionPane.INFORMATION_MESSAGE);
} catch(Exception e)
{
JOptionPane.showMessageDialog(this, e.getMessage (), “Hasil”, JOptionPane.ERROR_MESSAGE); }
}
}
System.exit(0);
}
}


D. Membuat Menu Lihat Data dari database Praktikum
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class LihatDatabase {
public static void main(String[] args) { LihatData data = new LihatData ();
}
}
class LihatData extends JFrame {
public LihatData () {
setTitle (“Lihat Database”);
String tdata [] [] = new String [0] [0];
try {
//Untuk Database menggunakan SQL Class.forName (“org.gjt.mm.mysql.Driver”);
Connection conn = DriverManager.getConnection(“jdbc:mysql://localhost/praktikum”,”root”,””);
Statement stmt = conn.createStatement ();
//Sintaks sql yang dibawa
String sql = “select * from mahasiswa”;
//Hasilnya ditampung disini ResultSet rs = stmt.executeQuery(sql);
tdata = new String [500] [3];
int p = 0;
//Jika data berikutnya ada, maka . . . while (rs.next ())
{
//kita dapatkan data dari kolom 1 tdata [p] [0] = rs.getString(1);
tdata [p] [1] = rs.getString(2);
tdata [p] [2] = rs.getString(3);
p++; }
//stmt dibebaskan dari memori stmt.close ();
//koneksi ditutup conn.close(); }
catch (Exception exc) {
JOptionPane.showMessageDialog(this, “ERROR”, ”Hasil”, JOptionPane.ERROR_MESSAGE); }
String[] nkolom = {“Nim”, “Nama”, “Alamat”};
JTable tabel = new JTable (tdata,nkolom);
JScrollPane gridtabel = new JScrollPane (tabel);
tabel.setPreferredScrollableViewportSize (new Dimension (400, 300)) ;
setLayout (new FlowLayout ());
add (gridtabel);
pack ();
setDefaultCloseOperation(3);
setVisible (true);
}
}


Nah,, sekian postingan dari Saya.. Terima Kasih 😁😁😁😁
Wassalamualaikum..

Laporan Praktikum Algo dan Pemrograman II (JAVA) 13 : Komponen-Komponen Swing Lanjutan



  Assalamualaikum warahmatullahi wabarakatuh... Postingan ini saya buat untuk memenuhi tugas Laporan praktikum dari Dosen cantik saya Sundari Retno Andini, S.T,M.Kom selaku Dosen Algo dan Pemrograman II (JAVA).
Komponen-Komponen Swing Lanjutan
            Swing merupakan alternatif lain untuk mengimplementasikan pemrograman Window. Walaupun diimplementasikan berdasarkan kelas AWT, Swing tidak menggunakan komponen2 yg terdapat pada AWT, sehingga tampilan2 komponen2 dalam swing tidak tergantung pada sistem operasi menjadi serupa. Jcomponent merupakan super kelas bagi sejumlah, Misala\nya JcomboBox, JLabel,Jlist dan Jpanel dan lainnya. Berikut ini merupakan beberapa kelas yg terdapat dalam package javax.swing yang sering dipergunakan.
Dibawah ini ada bebrapa contoh dari program2nya..
Mohon maaf sebelumnya gabisa tunjukin hasilnnya yg uda jadi..
A.     Membuat Program contoh dari JLabel dan JButton  menggunakan icon dan ToolTip
import javax.swing.*;
import java.awt.*;
public class cthIcon {
    public static void main(String[]args){
    JFrame myFrame= new JFrame("Contoh program AWT");
    Icon ikon= new ImageIcon("0013.gif");
    JLabel myLabel= new JLabel("Selamat Belajar JAVA", ikon, SwingConstants.CENTER);
    JButton myButton= new JButton ("SELESAI", ikon);
    myButton.setToolTipText("ini adlaah Button");
    myLabel.setToolTipText("ini adalah Label");
    myFrame.setLayout(new BorderLayout());
    myFrame.add(myLabel,"South");
    myFrame.add(myButton,"North");
    myFrame.setSize(500,500);
    myFrame.setVisible(true);
    myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

B.     Membuat program menggunakan JfileChooser
import javax.swing.*;
import javax.swing.filechooser.*;
import java.io.File;

public class ContohJFileChooser extends JFrame{
    public static void main(String[] args){
       ContohJFileChooser apl = new ContohJFileChooser();
    }
    public ContohJFileChooser(){
        setSize(400,150);

        JFileChooser jfc=
        new JFileChooser();

    FileFilter filteDotJava = new Akhiran (".java", "Berkas*.java");
    jfc.setFileFilter(filteDotJava);

    int hasil = jfc.showOpenDialog(this);
    if (hasil==JFileChooser.APPROVE_OPTION)
        setTitle("Tes JFileChooser. File: "+
            jfc.getSelectedFile().getName());
    else
        setTitle("Tes JFileChooser. Batal memilih");

    setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
    setVisible(true);
    }
}

class Akhiran extends FileFilter {
    private String ekstensi;
    private String keterangan;

    public Akhiran (String suffix, String deskripsi) {
        this.ekstensi = suffix;
        this.keterangan = deskripsi;
    }

    public boolean accept(File f){
        if (f.isDirectory())
           return true;

        return f.getName().endsWith(ekstensi);
    }

    public String getDescription(){
        return keterangan;
    }
}


C.     Membuat program dengan menggunakan JTextArea,JList dan JSpinner
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;

class cthList extends JFrame {
    JList daftar;
    JTextArea tArea1, tArea2;
    JPanel Panel1, Panel2, Panel3, Panel4;
    JSpinner Spin;
    String daftarBunga[] = {"Melati", "MAwar","Krisan","Kenanga", "Cempaka", "Tulip","Kamboja Jepang"};

    public cthList() {
        super("Tes JList");
        setSize(350,300);

        Spin = new JSpinner();
        Spin.setValue(new Integer(10));

        Panel1 = new JPanel();
        Panel2 = new JPanel();
        Panel3 = new JPanel();
        Panel4 = new JPanel();

        daftar = new JList (daftarBunga);
        daftar.setSelectedIndex(0);

        tArea1 = new JTextArea("",3,15);
        tArea1.setEditable(false);
        tArea2 = new JTextArea("",3,15);
        tArea2.setEditable(false);

        setLayout(new BorderLayout());
        add(Panel1,"North");
        add(Panel2,"West");
        add(Panel3,"East");
        add(Panel4,"South");
        Panel1.add(daftar);
        Panel2.add(tArea1);
        Panel3.add(tArea2);
        Panel4.add(Spin);

        setDefaultCloseOperation (3);
        setVisible(true);

        daftar.addListSelectionListener(new ListSelectionListener() {
            public void valueChanged(ListSelectionEvent e) {
                tArea1.setText("Yang terpilih: \n"   +daftar.getSelectedValue());
            }
        }
        );

        Spin.addChangeListener(new ChangeListener() {
            public void stateChanged(ChangeEvent e) {
                tArea2.setText("Nilai : \n" +Spin.getValue());
            }
        }
        );
    }
}

public class ContohJList {
    public static void main(String[]args){
    cthList apl= new cthList();
    }
}

D.     Membuat program dengan menggunakan JprogressBar
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;

class CthJProgressBar extends JFrame implements ActionListener {
    public final static int SELANG_WAKTU_TUNGGU =1;
    public final static int MAKS = 1000;

    JProgressBar pb;
    JButton b;
    Timer timer;
    int posisi = 0;

    public CthJProgressBar() {
        super("Tes JProgressBar");
        setSize(300, 120);

        pb= new JProgressBar(0, MAKS);
        b= new JButton("Mulai");

        JPanel p = new JPanel();
        p.add(b);

        setLayout(new BorderLayout ());
        add("North", p);
        add("South", pb);

        // -- Set Timer
        timer = new Timer(SELANG_WAKTU_TUNGGU, new ActionListener() {

        public void actionPerformed(ActionEvent evt) {
            posisi++;
            pb.setValue(posisi);
            if (posisi == MAKS) {
            timer.stop();
            b.setText("Mulai");
            }
        }
    });

    b.addActionListener(this);
    setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
    setVisible(true);
    }
    public void actionPerformed(ActionEvent e) {
        String s = e.getActionCommand();
        if (s.equals("Mulai")) {
           b.setText("Stop");
           posisi = 0;
           pb.setValue(posisi);
           timer.start();
        }
        else {
           b.setText("Mulai");
           timer.stop();
        }
    }
}
public class ContohJProgressBar {
    public static void main (String[] args) {
        CthJProgressBar apl = new CthJProgressBar();
        }
}


E.      Membuat Program dengan menggunakan JtabbedPane
import javax.swing.*;
class CthJTabbedPane extends JFrame {
    JLabel lTab1, lTab2, lTab3, lTab4;
    JTabbedPane tab;

    public CthJTabbedPane() {
    super("Tes JTabbedPane");
    setSize(300,120);

    tab = new JTabbedPane();
    JPanel panel1 = new JPanel();
    tab.addTab("Satu", panel1);
    lTab1 = new JLabel("Tab Satu");
    panel1.add(lTab1);

    JPanel panel2 = new JPanel();
    tab.addTab("Dua", panel2);
    lTab2 = new JLabel("Tab Dua");
    panel2.add(lTab2);

    JPanel panel3 = new JPanel();
    tab.addTab("Tiga", panel3);
    lTab3 = new JLabel("Tab Tiga");
    panel3.add(lTab3);

    JPanel panel4 = new JPanel();
    tab.addTab("Empat", panel4);
    lTab4 = new JLabel("Tab Empat");
    panel4.add(lTab4);

    add(tab);  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setVisible(true);
    }
}
    public class ContohTabbedPane {
    public static void main(String[] args) {
        CthJTabbedPane apl = new CthJTabbedPane();
        }
    }


F.      Membuat program dengan menggunakan Jtable
import javax.swing.*;
import java.awt.*;

public class ContohJTable extends JFrame {
public static void main(String[] args) {
ContohJTable apl = new ContohJTable();
}

public ContohJTable() {
    super("Tes JTable");
    setSize(500,150);

    Object[][] data = {
    {"11234", "Asti Damayanti", "Akunting", new Long(2200000)},
    {"11235", "Eritria", "Pemasaran", new Long(1200000)},
    {"11236", "Satria", "Personalia", new Long(1200000)},
    {"11237", "Tri Setyowari", "EDP", new Long(1500000)},
    {"11238", "Fahmi Basya", "Akunting", new Long(1250000)},
    {"11239", "Suadi Marwan", "Akunting", new Long(1000000)},
    {"11240", "Rani Ardini", "Pemasaran", new Long(1100000)},
    {"11241", "Listya", "Pemasaran", new Long(1100000)},
    };

    String[] judulKolom = {"NIP", "Nama", "Bagian", "Gaji"};
    JTable tabel = new JTable(data, judulKolom);
    JScrollPane scrollPane = new JScrollPane(tabel);
    add(scrollPane);

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setVisible(true);
    }
}

G.     Membuat program dengan menggunakan Jtree
import javax.swing.*;
import javax.swing.tree.*;
import javax.swing.event.*;

public class ContohJTree extends JFrame {
public static void main(String[] args) {
ContohJTree apl = new ContohJTree();
}
public ContohJTree() {
    super("Tes JTable");
    setSize(400,400);
    // --- Buat akar - Level 0
    DefaultMutableTreeNode akar = new DefaultMutableTreeNode("Benua");
    // --- Level 1
    DefaultMutableTreeNode afrika = new DefaultMutableTreeNode("Afrika");
    DefaultMutableTreeNode asia = new DefaultMutableTreeNode("Asia");
    DefaultMutableTreeNode amerika = new DefaultMutableTreeNode("Amerika");
    DefaultMutableTreeNode eropa = new DefaultMutableTreeNode("Eropa");
    // --- Level 2
    DefaultMutableTreeNode mesir = new DefaultMutableTreeNode("Mesir");
    DefaultMutableTreeNode libya = new DefaultMutableTreeNode("Libya");
    DefaultMutableTreeNode indonesia = new DefaultMutableTreeNode("Indonesia");
    DefaultMutableTreeNode jepang = new DefaultMutableTreeNode("Jepang");
    DefaultMutableTreeNode malaysia = new DefaultMutableTreeNode("Malaysia");
    DefaultMutableTreeNode kanada = new DefaultMutableTreeNode("Kanada");
    DefaultMutableTreeNode peru = new DefaultMutableTreeNode("Peru");
    DefaultMutableTreeNode bolivia = new DefaultMutableTreeNode("Bolivia");
    DefaultMutableTreeNode brazilia = new DefaultMutableTreeNode("Beazilia");
    DefaultMutableTreeNode austria = new DefaultMutableTreeNode("Austria");
    DefaultMutableTreeNode jerman = new DefaultMutableTreeNode("Jerman");
    // --- Membuat JTree
    JTree struktur = new JTree(akar);
    add(struktur);
    akar.add(afrika);
    akar.add(asia);
    akar.add(amerika);
    akar.add(eropa);
    afrika.add(mesir);
    afrika.add(libya);
    asia.add(indonesia);
    asia.add(jepang);
    asia.add(malaysia);
    amerika.add(kanada);
    amerika.add(peru);
    amerika.add(bolivia);
    amerika.add(brazilia);
    eropa.add(austria);
    eropa.add(jerman);

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    // --- Tampilkan Frame
    setVisible(true);
    }
}

Nah,, sekian postingan dari Saya.. Terima Kasih 😁😁😁😁
Wassalamualaikum..

Selasa, 05 Desember 2017

Laporan Praktikum Algo dan Pemrograman II (JAVA) 12 : JMENU



          Assalamualaikum warahmatullahi wabarakatuh... Postingan ini saya buat untuk memenuhi tugas Laporan praktikum dari Dosen cantik saya Sundari Retno Andini, S.T,M.Kom selaku Dosen Algo dan Pemrograman II (JAVA).
 Sebenernya ane bingung  ini mau ngepost apaan akhir2 ini, dosen ane said  “beberapa pertemuan kedepan  ini sampai selesai gak ada yg perlu dijelaskan, coz semua praktek”. kurang lebih begitu laa brow katenye...  Yauda deh dengan kapasitas IQ dan penalaran  ala kadarnya ane Cuma bisa buat laporan praktikum seperti ini ya buk :D dan dalam tempo yg sesingkat singkatnya . So, Langsung aja!!
JMENU
                                               
(Contoh Menu)
Menu adalah komponen yg berbentuk grup fungsi pemroses yg berkaitan dengan fitur2 suatu aplikasi. Kelas JmenuBar mengimplementasikan bar yg di dalamnya terdapat obyek2 menu yg bersifat pull down (dapat ditekan). Kelas  JmenuItem digunakan untuk menyusun item menu yg berupa teks atau label, termasuk membuat shortcut dari tombol2 keyboard. Kelas Jmenu digunakan untuk menginstans obyek2 pull down menu yg akan diletakkan pada menu bar.
Berikut beberapa contoh2 program dari Jmenu :
MainMenu.java
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;

class CobaMenu extends JFrame {
JMenuBar menuBar;
JMenu file, doc, edit, help;
JMenuItem open, save, exit, delete, copy, paste, about;

public CobaMenu(){
setTitle("Menu");
setSize (200,200);
file = new JMenu ("File");
file.setMnemonic ('F');
doc = new JMenu ("Document");
doc.setMnemonic ('D');
edit= new JMenu ("Edit");
edit.setMnemonic ('E');
help = new JMenu ("Help");
help.setMnemonic ('H');
open = new JMenu ("Open");
open.setMnemonic ('O');
save = new JMenu ("Save");
save.setMnemonic ('S');
exit = new JMenu ("Exit");
exit.setMnemonic ('X');
delete = new JMenu ("Delete");
delete.setMnemonic ('L');
copy = new JMenu ("Copy");
copy.setMnemonic ('C');
paste = new JMenu ("Paste");
paste.setMnemonic ('P');
about = new JMenu ("About");
about.setMnemonic ('A');


menuBar = new JMenuBar ();
setJMenuBar (menuBar);
menuBar.add(file);
file.add(open);
file.add(save);
file.addSeparator();
file.add(exit);
menuBar.add (doc);
doc.add(edit);
edit.add(paste);
edit.add(delete);
menuBar.add(help);
help.add(about);

exit.addActionListener(new ActionListener(){
public void actionPerformed (ActionEvent e){
System.exit(0);
}
});
setDefaultCloseOperation (EXIT_ON_CLOSE);
setVisible (true);
}
}
public class MainMenu{
public static void main (String[] neno){
CobaMenu m = new CobaMenu();
}
}
Berikut hasilnya setelah di run kan :







Kemudian ada program FFrame.java

            Lalu ada program FDialog.java

Dan masih banyak lagi contoh2 program Menu.
Nah,, sekian postingan dari Saya.. Terima Kasih 😁😁😁😁
Wassalamualaikum..