Selasa, 09 Desember 2014
Laporan Praktikum Desain Basis Data “Pembuatan Laporan Dengan Ireport”
Posted by Sinau Onlen on 05.23. Praktikum Desain Basis Data - No comments
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.
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)
Posted by Ayom on 08.06. Praktikum Desain Basis Data - No comments
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 perintah SELECT :
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
6. browse 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
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.
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
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
Join The Community