Academia.eduAcademia.edu

Aplikasi Java Programing

Aplikasi Java Programing Disusun oleh : Abdul Asri (1102412062) Kurikulum dan Teknologi Pendidikan Fakultas Ilmu Pendidikan UNIVERSITAS NEGERI SEMARANG TAHUN 2013/2014 Pendahuluan Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus didesain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, “Tulis sekali, jalankan di mana pun”. Saat ini java merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web. Sejarah Singkat JAVA Java dikembangkan pada tahun 1990 oleh insinyur Sun, James Gosling sebagai bahasa pemrograman yang  berperan sebagai otak untuk peralatan pintar (TV interaktif, oven serba bisa). Gosling tidak puas dengan hasil yang ia peroleh ketika menulis program dengan C++, bahasa pemrograman lain, sehingga ia mengasingkan diri di kantornya dan menulis bahasa pemrograman baru agar lebih sesuai dengan kebutuhannya. Gosling menamakan bahasa pemograman barunya Oak, nama sebuah pohon yang bisa ia lihat dari jendela kantornya; ia kemudian menamainya Green, dan kemudian mengganti namanya menjadi Java, berasal dari kopi Jawa (Java Coffee) , yang katanya banyak dikonsumsi dalam jumlah besar oleh pencipta bahasa ini. Bahasa pemograman ini kemudian menjadi bagian dari strategi Sun untuk menghasilkan uang jutaan dolar ketika TV interaktif menjadi industri bernilai jutaan dolar. Hal itu memang masih belum terjadi hari ini, tetapi sesuatu yang benar-benar berbeda kemudian terjadi pada bahasa pemograman baru Gosling itu. Secara kebetulan World Wide Web menjadi begitu populer, banyak kelebihan yang membuat bahasa Gosling dapat digunakan dengan baik dan cocok pada proyek maupun alat untuk adaptasi ke Web. Pengembang Sun merancang cara bagi program yang akan berjalan dengan aman dari halaman web dan memilih nama baru yang menarik untuk menemani fokus baru bahasa itu: Java. Walaupun Java dapat digunakan untuk banyak hal, Web menyediakan tampilan yang dibutuhkan untuk menarik perhatian internasional. Seorang programmer yang menempatkan program Java pada halaman web dapat langsung diakses ke seluruh planet "Web-surfing". Karena Java adalah teknologi pertama yang bisa menawarkan kemampuan ini, Java kemudian menjadi bahasa komputer pertama yang menerima perlakuan bagai bintang di media. Java adalah bahasa pemrograman untuk berbagai tujuan (general purpose), bahasa pemrogramn yang concurrent, berbasis kelas, dan berorientasi objek, yang dirancang secara khusus untuk memiliki sesedikit mungkin ketergantungan dalam penerapannya. Hal ini dimaksudkan untuk memungkinkan pengembang aplikasi "write once, run anywhere" (WORA), yang berarti bahwa kode yang dijalankan pada satu platform tidak perlu dikompilasi ulang untuk di tempat lain. Java saat ini menjadi salah satu bahasa pemrograman yang paling populer digunakan, terutama untuk aplikasi web client-server, dengan 10 juta pengguna.  Apa Yang dimaksud Dengan Teknologi Java a.      Sebuah Bahasa Pemrograman Sebagai bahasa pemrograman, java dapat membuat seluruh bentuk aplikasi, dekstop, web dan lainya. Sebagaimana dibuat dengan menggunakan bahasa pemrograman konvensional yang lain. Java adalah bahasa pemrograman yang berorientasi obyek (OOP) dan dapat dijalankan pada berbagai platfom sistem operasi. Perkembangan Java tidak hanya terfokus pada satu sistem operasi, tetapi dikembamgakan untuk berbagai sistem opersi dan bersifat open source. b.   Sebuah Development Environment Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak tools : compiler, intepreter, penyusun dokumtasi, paket kelas dan sebagainya. c.   Sebuah Aplikasi Aplikasi dengan teknologi Java secara umum adalah aplikasi serba guna yang dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment (JRE). d.  Sebuah Deployment Environment Terdapat dua komponen utama dari Deployment Environment. Yang pertama adalah JRE, yang terdapat pada paket J2SDK, mengandung kelas-kelas untuk semua paket teknologi Java yang meliputi kelas dasar dari Java, komponen GUI dan sebagainya. Komponen yang lain terdapat pada Web Browser. Hampir seluruh Web Browser komersial menyediakan interpreter dan runtime environment dari teknologi Java.  Sebagian Fitur dari JAVA Java Virtual Machine (JVM) JVM adalah sebuah mesin imajiner (maya) yang bekerja dengan menyerupai aplikasi pada sebuah mesin nyata. JVM menyediakan spesifikasi hardware danplatform dimana kompilasi kode Java terjadi. Spesifikasi inilah yang membuat aplikasi berbasis Java menjadi bebas dari platform maupun karena prose kompilasi diselesaikan oleh JVM. Aplikasi program Java diciptakan dengan file teks berekstensi .java. program ini dikompilasi menghasilkan satu berkas bytecode berekstensi .class atau lebih. Bytecode adalah serangkaian intruksi serupa instruksi kode mesin. Perbedaannya adalah kode mesin harus dijalankan pada sistem komputer dimana kompilasi ditujukan, sementara bytecode berjalan pada java interpreter yang tersedia di semua platform sistem komputer dan sistem operasi. Garbage Colletion Program Java melakukan garbage collection yang berarti program tidak perlu menghapus sendiri obyek-obyek yang tidak perlu digunakan lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh pemrogram dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang terdapat pada bahasa yang memungkinkan alokasi dinamis. Code Security Code Security terimplementasi pada Java melalui pengguanan Java Runtime Environment (JRE). Java menggunakan model pengamanan 3 lapis untuk melindungi sistem dari untrusted Java Code. Sejarah perkembangan Java Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang. Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai “*7″ (Star Seven). Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto. Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer. Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java. Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995. Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape. Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja “Bapak Java”, James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi “Java”. Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java). Versi Awal Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya: java.lang: Peruntukan kelas elemen-elemen dasar. java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas. java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan. java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP. java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI) java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web. Kelebihan Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebanya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut. OOP (Object Oriented Programming – Pemrogram Berorientasi Objek), Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi. Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer. Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas). Kekurangan Tulis sekali, jalankan di mana saja – Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X. Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer. Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun. Contoh Kode Program Sederhana Dalam Java Contoh program Hello World yang ditulis menggunakan bahasa pemrograman Java adalah sebagai berikut: Outputs “Hello, world!” and then exits public class HelloWorld public static void main(String args[]) { System.out.println(“Hello, world!”); } } Tahap Kompilasi Java Pemrogram menulis program dan menyimpannya di media dalam bentuk berkas “.java” (dot java). Pengkompilasi membentuk bytecodes dari program menjadi bentuk berkas ‘.class’. Pemuat kelas memuat bytecodes ke memori. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem keamanan Java. Penerjemah menerjemahkan bytecodes ke bahasa mesin.tidak bisa di pakai‘’ Integrated Development Environment Banyak pihak telah membuat IDE (Integrated Development Environment – Lingkungan Pengembangan Terintegrasi) untuk Java. Yang populer saat ini (Juli 2006) antara lain:  Dr. Java, program gratis yang dikembangkan oleh Universitas Rice, Amerika Serikat  BlueJ, program gratis yang dikembangkan oleh Universitas Monash, Australia  NetBeans (open source- Common Development and Distribution License (CDDL))  NetBeans disponsori Sun Microsystems, dan versi terkininya memilki Matisse, sebuah GUI Editor yang menurut pendapat umum merupakan yang terbaik.  Eclipse JDT (open source- Eclipse Public License) Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota ‘Eclipse Foundation’ (beserta individu-individu lain). Banyak nama besar yang ikut dalam ‘Eclipse Foundation’, termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan IDE lainnya.  IntelliJ IDEA (commercial, free 30-day trial)  Oracle JDeveloper (free)  Xinox JCreator (ada versi berbayar maupun free)  JCreator ditulis dalam C/C++ sehingga lebih cepat (dan menggunakan memori lebih sedikit) dari kebanyakan IDE.  Beberapa contoh program aplikasi JAVA sederhana Program ramalan Program java berikut ini merupakan sekumpulan ramalan tentang kehidupan berdasarkan metode perbintangan atauzodiak. Berbagai prediksi di dalamnya boleh dipercaya dan dijadikan referensi seperti peruntungan, kesehatan, keuangan, asmara, serta karir dan pekerjaan. Nah, bagi anda percaya akan ramalan bintang zodiak, artikel dibawah ini sudah lengkap mencakup semua bintang di zodiak mulai dari aquarius, aries, pisces, cancer, gemini, taurus, leo, capricorn, scorpio, sagitarius, libra dan virgo. Hanya saja saya menyarankan anda untuk tidak percaya 100% pada ralaman ini karena bisa saja melesat sebab sebuah ramalan tetaplah ramalan dan bukan ilmu pasti. Program sistem informasi untuk SMPN 17 Program ini merupakan program Sistem Informasi pada sekolah, baik dalam entri siswa, lokal, guru dan laporan-laporan lainnya seperti rapor, dll. Program ini diciptakan dengan menggunakan database Mysql 5 dan dengan nama Data Source nya "smp". Sistem informasi untuk penjualan Program toko "Elok" ini adalah sebuah program penjualan mini market yang dilengkapi dengan  Form transaksi, macam-macam laporan, baik itu laporan bulanan, laporan tahunan, dll, program ini menggunakan database Mysq. Program Pajak Program pajak ini digunakan bertujuan untuk pembayaran pajak untuk Dinas Pengelolaan Keuangan dan Aset Daerah Kota Bukittinggi. SIMULASI APLIKASI JAVA 2 PLATFORM MICRO EDITION (J2ME) - JAVA MIDlet Teknologi Wireless Java Secara konsep, teknologi wireless dapat dibagi dalam dua katagori, pertama untuk local dan kedua untuk area yang luas. Peralatan yang termasuk dalam katagori pertama misalnya adalah remote control untuk membuka atau mengunci mobil maupun garasi, telepon cordless 900Mhz, peralatan mainan dengan radio control, atau jaringan wireless. Peralatan wireless jenis pertama ini hanya bekerja untuk daerah dengan jangkauan yang tidak terlalu jauh. Sedangkan peralatan jenis aplikasi yang kedua diantaranya adalah pager, handphone, pda, dan sejenisnya. Jangkauan dari perangkat tersebut jauh lebih besar dari aplikasi jenis pertama. Karena jaringan yang ada di permukaan bumi berupa cell-tower, peralatan komunikasi bergerak seperti handphone menerima layanan dari sebuah wireless carrier atau perusahaan yang mengoperasikan cell-tower tersebut. Aplikasi komunikasi bergerak, dalam perkembangan awal masing-masing vendor menghasilkan platform aplikasi dan sistem operasi sendiri. Sehingga sebuah peralatan handphone Nokia dan Siemens mempunyai platform aplikasi masing-masing. Perbedaaan aplikasi menyebabkan suatu platform aplikasi maupun sistem operasi dalam handphone Nokia tidak dapat dijalankan dalam peralatan handphone Siemens misalnya. Sehingga berakibat memperburuk pengembangan aplikasi-aplikasi yang baru. Standarisasi yang dilakukan untuk membuat suatu bahasa pemrograman yang memiliki kebebasan platform atau platform independence. Salah satu teknologi Java adalah “write once run everywhere”, sehingga protabilitas Java merupakan suatu kekuatan yang dimiliki Java. Java dijalankan pada sistem operasi apapun tanpa perlu kompilasi ulang program Java yang dibuat. Untuk komunikasi bergerak, Sun Microsystem mengenalkan Java 2 Micro Edition (J2ME) yang merupakan salah satu bagian teknologi Java yang digunakan untuk aplikasi Java yang berjalan pada perangkat mobile device dan teknologi aplikasi wireless. Java Virtual Machine (JVM) Java Virtual Machine adalah software yang berfungsi untuk menjalankan program Java supaya dapat dimengerti oleh komputer. Kode program Java ditulis menggunakan editor teks seperti Notepad, Textpad, Editplus, Jcreator dan lainnya. Java Compiler yang digunakan untuk mengkompilasi kode program Java dirancang untuk menghasilkan kode yang netral terhadap semua arsitektur perangkat keras (hardware) yang disebut sebagai Java Bytecode (*.class). Dan JVM merupakan basis dari Java platform dan menjembatani antara bytecode dengan hardware. Java Application Programming Interface (Java API) Java API merupakan komponen-komponen dan kelas Java yang sudah jadi, yang memiliki berbagai kemampuan. Kemampuan untuk menangani objek, string, angka dan sebagainya 1. Java Applet merupakan program Java yang berjalan di atas browser. Penggunaan applet ini akan membuat halaman HTML lebih dinamis dan menarik. 2. Java Networking 3. Java Database Connectivity (JDBC) JDBC API terdiri atas class dan interface yang ditulis dalam bahasa Java untuk sebagai alat bantu bagi pembuat program (developer) dan menyediakan sekumpulan API untuk mengatur keamanan mengakses database seperti Oracle, MySQL, PostgreSQL, Microsoft SQL Server. Jadi keunggulan API JDBC dapat mengakses sumber data dan berjalan pada semua Platform yang mempunyai Java Viortual Machine (JVM). 4. Java Server Pages (JSP) JSP adalah suatu teknologi web berbasis bahasa pemrograman Java dan berjalan pada platform Java. JSP merupakan pengembangan dari Servlet serta merupakan bagian dari teknologi Java 2 Platform, Enterprise Edition (J2EE). 5. Java Card Java 2 Platform TM 4.1 Java 2 Platform, Standard Edition (J2SE ) Platform digunakan untuk menjalankan dan mengembangkan aplikasi Java pada level Personal Computer (PC). Platform ini berisi class-class inti pada Java dan Graphical User Interface (GUI). 4.2 Java 2 Platform, Micro Edition (J2METM) Platform ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada handheld devices atau perangkat-perangkat semacam handphone, Personal Digital Assistance (PDA) dan PocketPC 4.3 Java 2 Platform, Enterprise Edition (J2EETM ) Platform ini berupa paket yang berisi class-class dan interface-interface yang digunakan untuk menjalankan dan mengembangkan aplikasi Java berbasis web, seperti class-class Servlet, Java Server Pages (JSP) dan Enterprise JavaBeans (EJB) serta Java CORBA. 4.4 Java 2 Platform, Micro Edition (J2ME TM) Komponen-komponen J2ME terdiri dari Java Virtual Machine (JVM) yang digunakan untuk menjalankan aplikasi Java pada emulator atau handheld device, Java API (Aplication Programming Interface) dan tools lain untuk pengembangan aplikasi Java semacam emulator Java Phone, emulator Motorolla dari J2ME wireless toolkit. Dalam pengembangan aplikasi wireless dengan Java, J2ME dibagi menjadi dua buah bagian diantaranya ialah bagian configuration dan profile. 1. Lapisan Konfigurasi (Configuration Layer) J2ME mempunyai dua konfigurasi yaitu `Connected Limited Device Configuration (CLDC) dan Connected Device Configuration (CDC). 2. Lapisan Profil (Profile Layer) J2ME mempunyai beberapa profil antara lain : 1. Mobile Iformation Device Profile (MIDP) 2. Foundation Profile (FP) 3. Personal Profile 4. Personal Digital Assistance (PDA) Profile Dilihat dari Gambar 2.4 diatas maka J2ME (Java 2 Micro Edition) mempunyai lapisan konfigurasi dan profile yang didukung oleh Java Virtual Machine (C-Virtual Machine dan K-Virtual Machine). 3 Connected Limited Device Configuration (CLDC) Spesifikasi CLDC adalah sebagai berikut 1. Mengimplementasikan subset dari J2SE] 2. JVM yang digunakan dikenal dengan nama K-Virtual Machine (KVM) 3.Digunakan pada perangkat handheld dengan ukuran memori terbatas (160-512 Kbytes) 4. Prosesor : 16 Bit atau 32 Bit Pada bagian ini secara detail CLDC diperlukan untuk pengembangan aplikasi wireless dengan MIDP implementasinya CLDC digunakan untuk program Java pada perangkat keras dengan ukuran memori yang terbatas, pada 160 sampai dengan 512 Kilobyte. Akibatnya, fitur fitur yang kurang penting untuk diimplementasikan dalam handheld device yang bersangkutan dari Java 2 harus dibuang. MIDlets Aplikasi yang berjalan pada sebuah perangkat yang mendukung MIDP disebut dengan MIDlets, atau lebih singkatnya MIDlet merupakan aplikasi yang dibuat menggunakan Java 2 Micro Edition dengan profile Mobile Information Device Profile (MIDP). MIDP dikhususkan untuk digunakan pada handset dengan kemampuan CPU, memori, keyboard dan layer yang terbatas, seperti handphone, pager, PDA dan sebagainya. Gambar 2.6 Arsitektur aplikasi MIDP Gambar 2.6 Arsitektur aplikasi MIDP Pada Gambar 2,6 Menunjukkan bahwa aplikasi yang mendukung perangkat MIDP adalah aplikasi MIDlet yang juga termasuk bagian dari Java 2 Micro Edition. 5.1 Daur Hidup (LifeCycle) MIDlet Lifecycle dari sebuah MIDlet ditangani oleh Application Management Software (AMS). AMS adalah sebuah lingkungan tempat siklus dari sebuah MIDlet, mampu untuk diciptakan, dijalankan, dihentikan maupun dihilangkan. AMS sering pula disebut dengan Java Application Manager (JAM). MIDlet memiliki beberapa state, yaitu Pause, Active dan Destroy. Ketika masing-masing state dipanggil, beberapa method yang bersesuaian dipanggil. Method-method tersebut merupakan bawaan dari J2ME. Untuk menjelaskan proses MIDlet dalam Java Aplication Manager (JAM) adalah pada Gambar 2.7 5.2 Status MIDlet Gambar 2.7 LifeCycle dan perubahan status MIDlet 5.2.1 High Level API Kelas-kelas yang menyediakan fungsionalitas untuk pembuatan GUI pada MIDP ada pada paket javax.microedition.lcdui. Pada paket tersebut terdapat tiga interface dan 21 kelas. Interface tersebut adalah Display, Screen dan Form. 5.2.2 Low Level API Pada level pemrograman yang lebih rendah (low level), akan ditemukan fungsionalitas yang lebih spesifik ke jenis handheld yang digunakan. Kelas-kelas untuk pemrograman GUI pada level yang lebih rendah ini diimplementasikan oleh kelas javax.microedition.lcdui.Canvas dan javax.microedition.lcdui.Graphics. Kelas Canvas ini memungkinkan pengguna untuk menggambar garis, titik dan elemen-elemen dasar lain. 5.3 Servlet Tujuan servlet adalah untuk meng-generate respons yang bersifat dinamis. Cara komunikasi antara client dan server melalui protocol HTTP adalah sebagai berikut : 1.Client akan mengirimkan HTTP request ke server 2. Setelah request diterima oleh server, server akan memberikannya pada servlet untuk dilakukan pemrosesan, misalnya akses ke database 3. Setelah pemrosesan selesai dilakukan, server akan mengembalikan hasilnya ke client. Hasil pengembalian ini dapat berbentuk file HTML yang akan ditampilkan di browser, image dan data binary. Gambar 2.8 Cara Kerja Servlet 5.3.1 HTTP Servlet Dua buah tipe request HTTP yang paling umum digunakan adalah GET dan POST yang juga dikenal sebagai request method. Request GET digunakan untuk mendapatkan atau menerima informasi dari server. Pada umumnya request GET digunakan untuk menerima file HTML atau image. Sedangkan request POST digunakan untuk mengirimkan data ke server. Request POST akan mengirimkan informasi server dalam bentuk HTML yang berisi data yang dimasukkan oleh client. 5.4 Konsep Database Manajement System (DBMS) DBMS terdiri dari Database dan Set Program pengelola untuk menambah data, menghapus data, mengambil dan membaca data. 5.4.1 Structured Query Language (SQL) MySQL adalah Relation Database Manajemen Sistem yang didistribusikan secara gratis di bawah lisensi GPL (General Public lisence). Suatu database relational menyimpan data dalam table table terpisah. Hal ini memungkinkan kecepatan dan flexibelitas. MySQL merupakan turunan salah satu konsep utama dalam database sejak lama yaitu SQL (Struktured Query Language). MySQL menggunakan standar SQL (Structured Query Language), yaitu bahasa standar yang paling banyak digunakan untuk mengakses database dan SQL dirancang khusus untuk berkomunikasi dengan database. Gambar Tampilan dengan MySQL Front PERANCANGAN DAN IMPLEMENTASI Pada Java 2 Platform aplikasi yang digunakan Penulis adalah menampilkan simulasi Aplikasi Wireless dengan menggunakan program Java yang di koneksikan dengan MySQL secara sederhana. Dengan menggunakan Aplikasi J2ME program dapat ditampilkan dalam bentuk screen tampilan yang baik. Jika aplikasi ditingkatkan level yang lebih tinggi seperti client server pada Java 2 khususnya J2ME bisa dengan menghubungkan ke dalam database. Penulis dalam pembuatan ini menggunakan Mysql sebagai tempat penyimpanan data. Karena dalam Java 2 peran servlet tidak dapat begitu saja ditinggalkan Penulis membuat aplikasi servlet yang dapat melakukan respon-request terhadap aplikasi J2ME. Untuk server ini dibuat dengan menggunakan tomcat dengan alamat localhost untuk menjalankan aplikasi Java. Sedangkan bentuk simulasinya dapat menggunakan emulator-emulator yang sudah ada dalam J2ME-toolkit atau emulator handphone SL45i. Penulis mencoba melakukan pemindahan aplikasi yang berhasil dijalankan dalam emulator J2ME ke dalam emulator simulasi SL45i dengan tidak menghapus dan menghilangkan keaslian data. 1 Perancangan J2ME MIDlet Jadwal Ujian ini berisi tentang daftar Jadwal Ujian program ekstensi, Jurusan Teknik Elektro. MIDlet ini dibuat menggunakan perangkat keras (hardware) dan perangkat lunak (software). Aplikasi MIDlet ini dijalankan dalam program berbasis J2ME untuk handheld device memerlukan JDK 1.3 atau versi yang lebih tinggi, kemudian J2ME Wireless Toolkit untuk pengembangan aplikasinya Selain itu juga menggunakan software pendukung lainnya, seperti J2SDKEE versi 1.3.1, Jakarta-Tomcat-4.0.1 dan Siemens Mobility Toolkit (SMTK) SL45i. 2 J2ME Wireless Toolkit J2ME Wireless Toolkit ini digunakan untuk mengembangkan aplikasi Java yang telah dibuat. J2ME Wireless Toolkit yang digunakan dalam pembuatan MIDlet ini adalah J2ME Wireless Toolkit versi 1.0.4 2.1 Setting Instalasi Setting Instalasi yang perlu dilakukan ialah melakukan setPATH dan Classpath pada Java Development Kit (JDK), Java 2 Microedition (J2ME), Java 2 Enterprise Editon (J2EE), dan Tomcat. Tanpa melakukan setPATH program Java tidak dapat dijalankan pada Platform. 2.2 Java Development Kit (JDK) C:\jdk1.3. Untuk melakukan setting PATH pada : C:/ SET PATH=%PATH %;C:\jdk1.3\bin Dengan memastikan %PATH% telah diletakan pada directori C:\jdk1.3\bin lebih jelasnya bila menggunakan Windows XP dapat dilakukan melalui Environment Variabel pada windows. Gambar 3.5 adalah membuat Path JDK pada Windows XP. Setting -> Control Panel -> System -> Advanced > Environment Variables Gambar 3.5 PATH JDK Sistem Variabel Sedangkan isi SETCLASSPATH dilakukan untuk menyimpan class-class library Java system file baru yang akan dibuatkan berisi: C:\jdk1.3\lib\tools.jar C:\jdk1.3\jre\lib\rt.jar Gambar 3.6 SetCLASSPATH JDK Java Pada Gambar 3.6 diatas adalah membuat SETCLASSPATH Java Development Kit pada Windows XP. Sedangkan untuk melakukan setting bahwa daerah kerja J2ME diperlukan setPATH yang berisi: PATH=%PATH%;C:\jdk1.3\bin;C:\WTK104\bin Atau jika diedit pada System Variabel pada Windows Xp terlihat pada contoh Gambar 3.7 di bawah ini: 2.3 Instalasi J2EE Software Development Kit (J2EE SDK) Pada program java ini letak J2sdkee diletakkan pada C:\java\j2sdkee\ Selanjutnya Gambar 3.8 setting PATH pada Environment Variables dengan nama J2EE_HOME. Caranya sama dengan setting PATH pada JDK. Sedangkan untuk Setting Classpath J2EE diletakkan pada tujuan C:\java\j2sdkee\lib\j2ee.jar Gambar 3.9 Setting CLASSPATH pada J2EE 2.4 Instalasi Tomcat Servlet Engine Pada pembuatan program ini, penulis menggunakan Jakarta-Tomcat-4.0.1 2.4.1 Testing Server Tomcat Untuk menghidupkan fungsi servlet reloading, dilakukan melalui : Start-> Run->http://localhost:8080/index.html 3. Perancangan Database Aplikasi java dengan menggunakan bahasa pemrograman Mysql versi 3.23.49 dengan admin versi 1.4. Usahakan memakai versi yang terbaru untuk menghindari masalah database bila menggunakan windows Xp. 3.1 Perancangan Program Perancangan pembuatan program ini diperlukan sebagaimana program itu dapat diimplementasikan dalam simulasi WTK104 Seimens dan SL45i. Untuk pembuatan program ini diuraikan pokok bahasan tentang perancangan yang dibuat pada emulator J2ME yang dihubungkan dengan database Mysql, aplikasi Servlet untuk menjalankan class servlet dan aplikasi yang bekerja pada lingkungan J2ME saja. Dalam level class tinggi ini respon-request diimplemntasikan pada aplikasi servlet. 3.1.1 Diagram Flowchart pada J2ME dan Servlet Pada flowchart ini menggunakan emulator J2ME untuk menampilkan hasil yang dibuat dengan proses menggunakan class-class Servlet dan HttpServlet. Berikut adalah flowchart J2ME yang dikoneksikan dengan database Mysql dan Servlet Gambar 3.12 Diagram flowchart pada J2ME dengan Mysql Pada Gambar 3.12 menunjukkan Diagram flowchart pada Java 2 Micro Edition dengan Mysql. Gambar 3.14 Flowchart pada linkungan J2ME-toolkit Analisa dan Pembahasan Simulasi Menggunakan J2ME Wireless Toolkit Simulasi J2ME Wireless Toolkit ini digunakan untuk mengembangkan aplikasi Java yang telah dibuat. J2ME Wireless Toolkit yang digunakan dalam pembuatan MIDlet ini adalah J2ME Wireless Toolkit versi 1.0.4. 1.1 Mengaktifkan Tomcat Servlet Engine Server Tomcat perlu diaktifkan dahulu sebelum program dijalankan Start->Run->C:\java\catalina\Apache Tomcat 4.0\bin\Startup 1.2 Mengaktifkan J2ME Wireless Toolkit Start->program-> J2ME WTK->KToolbar->Open Project->[nama_project] misal semester1 maka akan ditampilkan: 1.3 Menjalankan MIDlet yang bekerja pada lingkungan J2ME toolkit Untuk menjalankan MIDlet yang bekerja pada lingkungan toolkit J2ME, MIDlet beroperasi pada toolkit saja karena emulator ini dapat langsung melakukan mengeksekusi program dan menampilkan dalam bentuk screen. 1.4 Menjalankan MIDlet Jadwal Ujian yang sudah terkoneksi dengan Mysql Penulis membuat dua buah MIDlet yang bekerja pada Handheld J2ME dengan isi MIDlet yang hanya bekerja dalam emulator J2ME toolkit dan MIDlet yang dihubungkan dengan database Mysql. screen akan menampilkan database berupa data yang telah dibuat pada hari senin meliputi keterangan hari, mulai, kodemk, namamk, sks, dosen, ruang. Gambar 4.6 Tampilan Prosses pemasukan data dan hasil pada K-toolbar Pengujian pada SMTK SL45i Pengujian ini diperlukan untuk mengetahui simulasi yang digunakan dan dijalankan penulis dapat dijalankan dengan baik dengan tujuan dan maksud untuk menampilkan MIDlet Jadwal pada emuator yang sudah menggunakan Java diantaranya ialah emulator SL45i. Untuk tujuan ini penulis menjelaskan step step pengoperasian emulator sebagai berikut: Pengujian MIDlet Ujian 1 Menguji Aplikasi ujian yang berisi ujian Semester yang akan dilakukan pada semester1 misalnya. Tujuannya mencari data mata kuliah yang akan diujikan pada akhir semester disini penulis mempresentasikan bahwa file .jad dan .jar yang dipindahkan terlebih dahulu ke dalam folder SL45i handphone sesungguhnya pada emulatornya dapat dijalankan dengan baik . Gambar 4.16 File JAD, JAR dan Manifest yang telah simpan di MMC Siemens Pada proses diatas Browser berfungsi mencari aplikasi berada dan browser tersebut menghubungkan server dengan file JAD (Java Application Descriptor). Ketika JAD diterima dilewatkan menuju JAM (Java Application Manager) aplikasi yang ada pada emulator SL45i berdasarkan Descriptor aplikasi yang diidentifikasikan dengan .jad Untuk menjalankan langkah-langkah menjalankan emulator SL45i dengan Gambar 4.17 Memasukkan nama Hari->tulis Hari Senin->OK atau ->Exit Pada Gambar 4.18 Setelah mengaktifkan file Java dalam emulator SL45i masukan Hari dalam yang Pengujian MIDlet Ujian 2 sedangkan tampilan untuk simulasi yang bekerja hanya pada lingkungan J2ME toolkit dengan contoh simulasi ujian2 dengan tampilan hasil eksekusi pada MIDlet Semester4. tampilan Screen pada Gambar 4.19 pada J2ME Gambar 4.19 Screen MIDlet Ujian2 pada J2ME Berdasarkan white resmi dari SUN, Java memiliki karakteristik sebagai berikut : Sederhana Bahasa pemrograman Java menggunakan sintaks mirip C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangakn pengguanaan pointer yang rumit dan multipleinhritance. Java juga menggunakan automatic memory allocation dan memory garbage collection. Berorientasi obyek (obyek oriented) Java menggunakan pemrograman berorientasi obyek yang membuat program dapat dibuat secara modular dan dapat dipergunakan kembali. Pemrograman berorientasi obyek memodelkan dunia nyata ke dalam obyek dan melakukan interaksi antar obyek-obyek tersebut. Terdistribusi (Distributed) Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan adanya liberries netwoking yang terintegrasi pada Java. Interpreted Program Java dijalankan menggunakan interpreted yaitu Java Virtual Machine (JVM). Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes dapat dijalankan pada platform yang berbeda-beda. Robust Java menpunyai reliabilitas yang tinggi. Compiler pada Java mempunyai kemampuan mendeteksi error secara lebih teliti dibandingkan bahasa pemrograman lain. Java mempunyai runtime-Exception handing untuk membantu mengatasi error pada pemrograman. Secure Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi, java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak digunakan untuk merusak sistem komputer yang menjalankan aplikasi tersebut. Architecture Neutral Program Java merupakan platform independent. Program cukup mempunyai satu buah versi yang dapat dijalankan pada platform berbeda dengan Java Virtual. Portable Source code maupun program Java dapat dengan mudah dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang. Performance Performance pada Java sering dikatakan kurang tinggi. Namun performance Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan inprise, Microsoft ataupun Symantec yang menggunakan Just In Time Compilers (JIT). Multitheaded Java mempunyai kemampuan untuk membuat suatu program yang dapat melakukan beberapa pekerjaan secara sekaligus dan simultan. Dynamic Java didesain untuk dapat dijalankan pada lingkungan yang dinamis. Perubahan pada suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa menggangu program yang menggunakan class tersebut. DAFTAR PUSTAKA Wicaksono, Adi. 2002. Dasar-dasar Pemrograman Java 2. Elex Media Kompuntindo. Jakarta. Wicaksono, Adi. 2002. Pemrograman Aplikasi Wireless dengan Java. Elex Media Komputindo. Jakarta. Sanchez, Julio. Canton, Maria P. 2002. JAVA 2 Weekend Crash Course. Elex Media Komputindo. Jakarta. Setyabudi, Agus. Samuel, Albert.2002. Java Servlet dan JSP. Elex Media Komputindo. Jakarta. Dwi. Prasetyo, Didik. 2002. Administrasi Database Server MySQL. Elex Media Komputindo.Jakarta. Aditya. Hartanto, Antonius. 2003. Java 2 Micro Edition Mobile Interface Device Programming. Elex Media Komputindo. Jakarta. W. Purbo, Onno. Daniel S., Akhmad. 1998. Java & JavaScript. Elex Media Komputindo. Jakarta. Tremblet, Paul. 2002. Instant Wireless Java with J2METM . Osborne. USA Rickyanto, Isak. 2002. Java Server Pages. Elex Media Komputindo. Jakarta. ----. 2002. Borland Jbuilder MobileSet: Developer’s Guide. Borland Software Corporation. California. ----. 2001. MIDP APIs for Wireless Applications. Sun Microsystems, Inc. California. ----. 2001. Java 2 Platform, Micro Edition Wireless Toolkit User’s Guide (Version 1.0.3). Sun Microsystems, Inc. California. Fathansyah, Ir. 1999. Basis Data. Penerbit Informatika.Bandung. Allamaraju, Avedal, Browett, Diamond, Griffrin, Holden, Johnson, Karsjens, Kim, Longshaw, Myers, Nakhimovsky, O’Connor, Tyagi, Van Damme, Van Huizen, Wilcox, Zeiger., Profesional Java Server Programming J2EE Editon, Wrox Press Ltd, Birmingham, 2000. http://yessarahmad89.blogspot.com/2012/10/kumpulan-program-java.html http://bpptik.kominfo.go.id/index.php/id/artikel/142-sejarah-singkat-java http://ayie03.wordpress.com/2010/01/13/makalah-pemrograman-java/