Welcome to SinauOnlen

Selamat datang di Official Sinau Onlen, blog ini berisi tentang terobosan-terobosan bagi Anda yang ingin mencari ilmu seputar pemanfaatan Teknologi untuk meningkatkan kualitas pendidikan. Blog ini sangat berguna bagi murid maupun pengajar yang ingin memberi warna berbeda di tempat ia menjalani pendidikan.....

Read More

MAN Sidoarjo

MAN Sidoarjo (Madrasah Aliyah Negeri Sidoarjo) adalah sekolah kebanggan kami yang setiap hari dipelajari ilmu dunia dan agama, jadi diseimbangkan antara kemajuan IMTAQ dan IPTEK. Alamat MAN Sidoarjo berada di Jl. Stadion No. 2 Sidoarjo, Telp./ Fax. (031)8963805.

Read More

Ikatan Komputer SMANSA

SMANSA (Ikatan Komputer SMAN 1 Sukabumi mengadakan lomba Blog Competition yang sudah dimulai pendaftarannya. Perlombaan ini hanya untuk tingkat SMP/ Sederajat dan SMA/ Sederajat....

Read More

Cari Tahu Lewat KBBI

KBBI adalah singkatan dari Kamus Besar Bahasa Indonesia. Dengan KBBI online/ dalam jaringan ini, Anda bisa mencari kata sulit tanpa harus membeli KBBI dalam bentuk buku. Silakan nikmati kemudahan belajar hanya dengan akses internet/ pemanfaatan teknologi. Disediakan gratis untuk Anda pecinta ilmu sastra Indonesia. Langsung saja kunjungi website-nya....

Read More

Dukung Si On Ya...!

Blog Sinau Onlen sekarang sedang mengikuti event lomba yang diadakan oleh Ikatan Komputer SMANSA (SMAN 1 Sukabumi). Si On mohon dukungannya untuk lebih baik agar dapat memenangkan kompetisi ini, baik dukunganberupa kritik atau saran maupun doa....

Read More

Join The Community

Blog Competition

Search

Selasa, 09 Desember 2014

Laporan Praktikum Desain Basis Data “Pembuatan Laporan Dengan Ireport”

A.    Materi/ Teori
Terdapat banyak tools untuk reporting dalam java. Diantaranya yang dapat digunakan adalah : 
 JasperReports : Merupakan software open source untuk reporting  
 iReport : Merupakan Visual Designer untuk membuat laporan yang komplek menggunakan JasperReports library tanpa harus memiliki pengetahuan tentang XML 
JasperReports  & iReport dapat di download melalui: http://jasperforge.org/  
Beberapa fitur iReport :  
98% mendukung JasperReports tags  
Visual designer wysiwyg untuk menggambar rectangles, lines, ellipses, text fields fields, charts, sub reports...  
Built-in editor dengan syntax highlighting  
Mendukung Unicode dan bahasa non Latin (Russian, Chinese, Korean,...)  
Document structure browser  
Menggabungkan compiler dan exporter  
Mendukung semua JDBC compliant databases  
Memiliki Wizard untuk membuat report secara otomatis  
Mendukung  sub reports  
Save backup  
Support for templates  
Membuat Report di Java-Netbeans Menggunakan JasperReport dan Ireport. Sebelum kita mengetahui cara membuatnya, sebaiknya kita mengetahui pengertian dari JasperReport dan iReport. Berikut pengertiannya :
iReport     : adalah Visual Designer untuk membuat laporan yang komplek, menggunakan jasperReport Libarary.
iReport adalah tools yang memudahkan Anda membuat laporan. Biasanya iReport di gunakan dalam bahasa pemrograman Java. iReport bersifat open source jadi Anda bebas menggunakan dan tidak perlu membeli lisensi untuk mengembangkannya.
JasperReport  : adalah software(library) open source untuk reporting.
jasperReport dapat anda download di alamat : http://jasperforge.org/
JasperReports adalah sumber terbuka Java alat pelaporan yang dapat menulis ke berbagai sasaran, seperti: layar, printer, menjadi file PDF, HTML, Microsoft Excel, RTF, ODT, nilai-nilai yang dipisahkan dengan koma atau XML .
Dapat digunakan dalam aplikasi Java aktif, termasuk Java EE atau aplikasi web, untuk menghasilkan konten dinamis. Membaca dengan instruksi dari file XML atau .jasper.JasperReports adalah bagian dari inisiatif tumpukan sumber terbuka Lisog
JasperReports adalah open source pelaporan perpustakaan yang dapat dimasukkan ke dalam aplikasi Java. Fitur termasuk:    Scriptlets dapat menyertai definisi laporan yang definisi laporan dapat memohon pada setiap titik untuk melakukan proses administrasi tambahan. Scriptlet dibangun menggunakan Java, dan memiliki banyak kait yang dapat dipanggil sebelum atau setelah tahap laporan generasi, seperti laporan, halaman, kolom atau kelompok.  Sub-laporan Untuk pengguna dengan lebih canggih laporan manajemen persyaratan, laporan yang dirancang untuk JasperReports dapat dengan mudah diimpor ke JasperServer - server interaktif laporan...
JasperReports laporan didefinisikan dalam XML file format, disebut JRXML, yang dapat menjadi tangan-kode, dihasilkan, atau dirancang menggunakan alat. File format didefinisikan oleh Dokumen jenis definisi (DTD) atau skema XML untuk versi yang lebih baru, menyediakan interoperabilitas terbatas. Perbedaan utama antara menggunakan XML dan .jasper file adalah bahwa XML file harus disusun pada saat runtime menggunakan JasperCompileManager kelas.
           B.     Hasil Praktikum
1.      Tambahkan dahulu plugin untuk membuat wizard ireport dengan cara pilih tab Tools, kemudian pilih Plugins.

2.      Muncul tampilan Plugins, pilih tab Downloaded, pilih semua pluginnya, klik Open.

3.      Setelah semua masuk seperti di bawah ini, klik Install.

4.      Sekarang kita buat Report Wizard, caranya seperti membuat class biasa, hanya saja memilih ReportWizard.

5.      Beri nama file ireportnya, lalu pilih taruh di direktori mana file ireport yang dibuat dengan klik Browse.

6.      Pada tahap selanjtnya pilih New, lalu di Datasource pilih Database JDBC  connection, klik Next.

7.      Pada tampilan selanjtnya, isi dan sesuaikan dengan postgreSQL dan database masing-masing, jika sudah test koneksi, lalu Save.

8.      Sekarang isikan query untuk mengambil data dari tabel mahasiswa “select * from mahasiswa;”, klik Next jika sudah.

9.      Pada bagian fields yang ada dikiri, pindah ke kanan semua dengan klik panah doublekanan.

10.  Bagian group by kosongkan saja, langsung klik Next.

11.  Pada bagian Layout pilih tabular layout, klik Next.

12.  Lalu buka menu Files, klik kanan pada file ireport, jika belum format .jrxml, rubahlah menjadi .jrxml di bagian  properties.


13.  Lalu ketik kode di bawah ini di bagian atas class form yang Anda buat.

14.  Lalu buatlah tombol Print di form pada praktikum 9 kemarin.

15.  Pada tombol Print itu, beri action dengan kode seperti di  bawah ini.

16.  Jika sudah, jalankan programnya dan klik tombol Printnya, akan muncul ireport yang telah Anda buat.

17.  Lalu masuk ke file ireport yang telah Anda buat, pilih ReportInspector, pilih Parameters, Add Parameter, kemudian ubah nama parameter tadi menjadi “nim”.

18.  Ubah Parameter Class ubah menjadi java.lang.Integer.

19.  Lalu masuk bagian report query, isi query languagenya dengan “select * from mahasiswa where nim_mah = $P{nim};”, lalu klik OK.

20.  Pada aksi tombol Print, ubah menjadi seperti di bawah ini.

21.  Jika sudah, uji coba programnya dengan menjalankannya, masukkan dulu nim yang ignin Anda masukkan, lalu klik Print,tampilannya akan seperti di bawah ini.

             C.    Kesimpulan, Kritik, Saran, dan Manfaat
Pada praktikum ini, kita mempraktikkan bagaimana cara membuat laporan/ ireport dari data-data yang sudah ada dalam DBMS dengan membuat ireport ini. Membuatnya dengan menambah plugin ireport terlebih dahulu, cara membuatnya juga sangat mudah. Sudah lumayan mantap praktikum terakhir pada mata kuliah praktikum desain basis data kali ini, semuanya bisa di kelas, sarannya semoga aslab yang menilai juga memberikan nilai terbaik untuk semuanya, hitung-hitung khusnul khotimah untuk laporannya, kemudian disusul khusnul khotimah untuk UAS nya. Semoga bermanfaat semua postingan di semester ini. Terima kasih. J
            D.    Daftar Pustaka

             Modul Praktikum Desain Basis Data 2014
             https://gipculart.wordpress.com/2011/12/27/tutorial-membuat-laporan-dengan-ireport/
             https://hendrosteven.wordpress.com/2008/09/09/membuat-report-menggunakan-ireport-dari-netbeans/
             http://khoiril007.files.wordpress.com/2011/01/modul5.pdf

Selasa, 02 Desember 2014

Laporan Praktikum Desain Basis Data Koneksi PostgreSQL pada Java (Netbeans)


         A.    Landasan Teori
Untuk mengakses database dengan Java cukup mudah. API Java yang perlu dipelajari ada dalam paket java.sql. Class-class yang berhubungan dengan mengakses database antara lain Connection, Statement, PreparedStatement dan ResultSet. Teknologi Java untuk mengakses database disebut JDBC. Dengan JDBC kita dapat menciptakan koneksi ke database, mengirimkan perintah-perintah sql dan memproses hasil eksekusi sql.
Hal lain yang dibutuhkan untuk mengakses database adalah JDBC Driver. JDBC Driver berbeda untuk setiap database yang ada. Misalnya JDBC Driver untuk PGSQL/MySQL akan berbeda dengan JDBC Driver untuk SQL Server atau Oracle.
Aplikasi database yang dikembangkan menggunakan teknologi Java tidak akan terikat dengan database yang digunakan. Maksudnya adalah kita dapat bergonta-ganti database engine dari yang satu ke database engine yang lain tanpa harus mengubah source program kita secara signifikan. Yang perlu diganti hanyalah JDBC Driver yang digunakan.
Terdapat beberapa langkah yang secara umum harus dilakukan sehingga aplikasi yang berbasis Java dapat berinteraksi dengan database server. Langkah-langkah tersebut sebagai berikut :
1. Impor package java.sql
2. Memanggil Driver JDBC
3. Membangun Koneksi
4. Membuat Statement
5. Melakukan Query
6. Menutup Koneksi

1.      Import Package java.sqll
java.sql = Java Database Connectivity (JDBC) untuk mengakses database.
Adapun listing untuk mengimpor package java.sql adalah sebagai berikut :
Import java.sql.*;
2.      Memanggil Driver JDBC
Langkah pertama untuk melakukan koneksi dengan database server adalah dengan memanggil JDBC Driver dari database server yang kita gunakan. Driver adalah library yang digunakan untuk berkomunikasi dengan database server. Driver dari setiap database server berbeda-beda, sehingga Anda harus menyesuaikan Driver JDBC sesuai dengan database server yang Anda gunakan.Berikut ini adalah listing program untuk memanggil driver JDBC.
Class.forName(namaDriver); 
atau Class.forName(namaDriver).newInstance();
Kedua cara di atas memiliki fungsi yang sama yaitu melakukan registrasi class driver dan melakukan intansiasi. Apabila driver yang dimaksud tidak ditemukan, maka program akan menghasilkan exception berupa ClassNotFoundException. Untuk menghasilkan exception apabila driver tidak ditemukan, maka diperlukan penambahan try-catch. Adapun cara menambahkan try-catch untuk penanganan error apabila driver tidak ditemukan, sebagai berikut :
Try {
Class.forName(namaDriver);
} catch (ClassNotFoundException e) {
... Penanganan Error ClassNotFoundException
}
Contoh listing memanggil driver menggunakan MySQL adalah :
try {    
Class.forName(“org.postgresql.Driver”);
} catch (ClassNotFoundException e) {
System.out.println(“Pesan Error : “ + e)
}
Berikut ini adalah daftar nama-nama driver dari beberapa database server yang sering digunakan.
3. Membangun Koneksi
Setelah melakukan pemanggilan terhadap driver JDBC, langkah selanjutnya adalah membangun koneksi dengan menggunakan interface Connection. Object Connection yang dibuat untuk membangun koneksi dengan database server tidak dengan cara membuat object baru dari interface Connection melainkan dari class DriverManagerdengan menggunakan methode getConnection().
Connection koneksi = DriverManager.getConnection(<argumen>);
Untuk menangani error yang mungkin terjadi pada proses melakukan koneksi dengan database maka ditambahkan try-catch. Exception yang akan dihasilkan pada proses ini adalah berupa SQLException. Adapun cara penulisan listingnya adalah sebagai berikut :
try {
... koneksi database
} catch (SQLException sqle){
... penanganan error koneksi
}
Ada beberapa macam argumen yang berbeda dari methode getConnection() yang dipanggil dari DriverManager, yaitu :
getConnection(String url)
Pada methode diatas hanya memerlukan argumen URL, sedangkan untuk data user dan password sudah diikutkan secara langsung. Adapun penulisan nilai sebagai berikut :
jdbc:<DBServer>://[Host][:Port]/<namaDB>?<user=User>&<password=Pasword>
Berikut ini contoh penggunaan methode ini didalam program :
try {
String url = “jdbc: postgresql://localhost:3306/Dbase? User = adi & password= pas”;
Connection koneksi = DriverManager.getConnection(url);
System.out.prinln(“Proses apabila koneksi sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi gagal dilakukan”);
}
getConnection(String url, Properties info)
Pada methode ini memerlukan URL dan sebuah object Properties. Sebelum menggunakan methode ini, Anda harus melakukan import package berupa java.util.*, ini dikarenakan object Properties terdapat pada package tersebut. Object Properties berisikan spesifikasi dari setiap parameter database misalnya user name, password, autocommit, dan sebagainya. Berikut ini contoh penggunaan methode ini didalam program :
try {
String url = “jdbc: postgresql://localhost:5432/praktikumdbd”;
Properties prop = new java.util.Properties(); // tidak mengimpor kelas
prop.put(“user”,”NamaUser”);
prop.put(“password”,”datapassword”);
Connection koneksi = DriverManager.getConnection(url, prop);
System.out.prinln(“Proses apabila koneksi sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi gagal dilakukan”);
}
getConnection(String url, String user, String password)
Pada methode ini memerlukan argumen berupa URL, user name, dan password. Methode ini secara langsung mendefinisikan nilai URL, user name dan password. Berikut ini contoh penggunaan methode ini didalam program :
try {
String url = “jdbc: postgresql://localhost:5432/ praktikumdbd”;
String user = “adi”
String password “ternate”
Connection koneksi = DriverManager.getConnection(url, user, password);
System.out.prinln(“Proses apabila koneksi sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi gagal dilakukan”);
}
Berikut ini adalah daftar penulisan URL dari beberapa database server yang sering digunakan.
Database Server Nama URL Contoh penggunaan
JDBC-ODBC jdbc:odbc:<NamaDatabase> jdbc:odbc:Dbase
MySQL
jdbc:mysql://<nmHost>:<port>/<nmDB> jdbc:mysql://localhost:3306/Dbase
PostgreSQL
jdbc:postgresql://<nmHost>:<port>/<nmDB> jdbc:postgresql://localhost:5432/Dbase
4. Membuat Statement
JDBC API menyediakan interface yang berfungsi untuk melakukan proses pengiriman statement SQL yang terdapat pada package java.sql. Statement yang ada secara umum digunakan terdiri dari berikut :
Statement
Interface ini dibuat oleh methode Connection.createStatement(). Object Statement digunakan untuk pengiriman statement SQL tanpa parameter serta Setiap SQL statement yang dieksekusi dikirim secara utuh ke database.
Statement stat = Connection.createStatement();

PreparedStatement
Interface ini dibuat oleh methode Connection.prepareStatement(). Object PreparedStatement digunakan untuk pengiriman statement SQL dengan atau tanpa parameter. Interface ini memiliki performa lebih baik dibandingkan dengan interface Statement karena dapat menjalankan beberapa proses dalam sekali pengiriman perintah SQL, pengiriman selanjutnya hanya parametered querynta saja.
PreparedStatement stat = Connection.prepareStatement();
5. Melakukan Query
Setelah kita memiliki object statement, kita dapat menggunakannya untuk melakukan pengiriman perintah SQL dan mengeksekusinya. Methode eksekusi yang digunakan untuk perintah SQL terbagi menjadi dua bagian yaitu untuk perintah SELECT methode eksekusi yang digunakan adalah executeQery() dengan nilai kembaliannya adalahResultSet, dan untuk perintah INSERT, UPDATE, DELETE
methode eksekusi yang digunakan adalah executeUpdate().
Berikut ini adalah contoh melakukan eksekusi perintah SQL dan mengambil hasilnya (ResultSet) dengan menggunakan perintaSELECT :
String sql = “SELECT kode, nama, alamat, kelas FROM dataSiswa”;
ResultSet set = stat.executeQuery(sql);
while (set.next()) {
String kode = set.getString("kode");
String nama = set.getString("nama");
String alamat = set.getString("alamat");
String kelas = set.getString("kelas");
}
Berikut ini adalah contoh melakukan eksekusi perintah SQL dengan menggunakan perintah DELETE.
String sql = "DELETE FROM data_siswa WHERE kode = “1234”;
PreparedStatement stat = konek.prepareStatement(sql);
stat.executeUpdate();
6. Menutup Koneksi
Penutupan terhadap koneksi database perlu dilakukan agar sumber daya yang digunakan oleh object Connection dapat digunakan lagi oleh proses atau program yang lain. Sebelum kita menutup koneksi database, kita perlu melepas object Statement dengan kode sebagai berikut :
statement.close();
Untuk menutup koneksi dengan database server dapat kita lakukan dengan kode sebagai berikut :
connection.close();

Praktek Langkah-langkah Koneksi database dengan java di Netbeans. Materi kali ini akan sedikit membubuhkan tutorial untuk pengkoneksian dan penyampaian contohnya. Seperti berikut langkah-langkahnya :
1. buatlah project baru pada netbeans
2. pada project tersebut, klik kanan – properties
3. pilih Libraries pada list Properties
4. add Library
5. add JAR/Folder
6browse file konektor PostgreSQL
7. ambil file konektor, semisal :postgresql-9.0-801.jdbc4.jar atau versi yang lain.
8. kemudian open
9. Klik OK   

  B.     Hasil Praktikum
1.      Silakan buat sebuah project baru di netbeans masing-masing.

2.      Masukkan tag Properties, lalu masukkan library, dengan cara klik kanan di bagian Libraries dan klik Add Library >  pilih PostgreSQL JDBC Driver-postgresql, dan Add Library lagi.

3.      Buatlah class koneksi, kemudian masukkan script/ kode untuk mengoneksikan netbeans Anda ke database PostgrSQL atau terserah Anda mau pakai apa, tapi sekarang kita pakai postgresql

4.      Jika sudah, buat lagi sebuah class yang seperti tampilan di bawah ini, bisa Anda buat dengan mudah dengan Jframe Form.

5.      Setelah itu, berilah kita beri aksi pada setiap tombolnya, mulai dari cari, simpan, edit, hapus, tampil, dan reset.
         Kode untuk aksi simpan/ insert
        Kode untuk edit/ update

      Kode untuk hapus
       Kode untuk Tampil
          Kode untuk Reset

          Kode untuk Cari

6.      Jika semuanya sudah berhasil, sekarang buat sebuah project lagi, yang bentuk dan aksinya sama, hanya saja terdapat kelas koneksi sendiri sehingga tidak menulis ulang pada pemanggilan driver jdbc, url, dan koneksinya pada saat insert, update, delete dan tampil data juga.


Setelah emmbuat class koneksi, tinggal dipanggil saja classnya di class form baru, seperti di bawah ini.



Kode aksi Simpan
Kode aksi Edit

Kode aksi Hapus
Kode aksi Tampil

Kode aksi Reset, ini sama seperti sebelumnya. karena tidak perlu koneksi

Kode aksi Cari

Setelah semua selesai, dan bisa dijalankan. akan jadi seperti ini
Ini jika simpan
Edit
Hapus

Cari Tampil

Reset


              C.    Kesimpulan, Kritik, Saran, dan Manfaat
Lumayan seru praktikum kali ini, karena langsung membuat pengaplikasian project. Simpel dan mudah. Tapi butuh ketelatenan agar tidak ada kekeliruan mulai dari titik komanya. Untuk Aslab saya, sebuat saja Landhi (nama samaran), laporan kali ini bebas pakai MySQL atau PostgreSQL, bukan harus MySQL saja seperti di modul.  Semoga laporan kali ini bermanfaat bagi semua.
              D.    Daftar Pustaka
http://sinau-java.blogspot.com/2008_05_01_archive.html 
http://darkzone7.blogspot.com/2013/10/package-pada-java-pengertian-joptionpane.html
http://catatan-ts.blogspot.com/2012/09/membuat-koneksi-postgresql-di.html
Musthafa,Aziz. 2014. Modul Praktikum Desain Basis Data 2014