Konsep Dasar Aplikasi Berbasis Web Java Server Pages

5. KKM tersebut dicantumkan dalam LHB dan harus diinformasikan kepada seluruh warga sekolah dan orang tua siswa.

2.10. Konsep Dasar Aplikasi Berbasis Web

Web merupakan kumpulan informasi pada server komputer yang terhubung satu sama lain dalam jaringan internet maupun intranet. Sedangkan aplikasi berbasis web web based secara prinsip menyerupai aplikasi dalam komputer biasa. Yang membedakan adalah dalam aplikasi web based menggunakan tag-tag html sebagai dasar tampilan, sedangkan aplikasi program komputer menggunakan berbagai platform bahasa pemrograman. Aplikasi web terdiri dari beberapa golongan, diantaranya adalah : 1. Inisialisasi Data Master Proses yang dilakukan adalah pengisian satu atau beberapa tabel yang akan digunakan sebagai referensi program aplikasi. Pengisian data master secara umum terdiri dari input data, verifikasi data, proses insert data jika data belum terdaftar sebelumnya, atau update data jika data telah ada sebelumnya, serta delete data jika data hendak dihapus dari tabel master. 2. Operasi Reporting Operasi mendapatkan data hasil query yang telah diolah sehuingga didapat informasi yang digunakan untuk kepentingan manajerial dan rekapitulsi beberapa transaksi. Selain beberapa golongan tersebut juga terdapat operasi verifikasi, penampilan profil, penyampaian pesan, pengisian pesan khusus serta kombinasi dari beberap golongan tersebut.

2.11. Pemrograman Java

Java adalah suatu teknologi di dunia software komputer, yang merupakan suatu bahasa pemrograman, dan skaligus suatu platform. Sebagai bahasa pemrograman, Java dikenal sebagai bahasa pemrograman tingkat tinggi. Java mudah dipelajari, terutama bagi programmer yang telah mengenal CC++. Java merupakan bahasa pemrograman berorientasi objek yang merupakan paradigma pemrograman masa depan. Sebagai bahasa pemrograman, Java dirancang menjadi handal dan aman. Java juga dirancang agar dapat dijalankan disemua platform, dan juga dirancang untuk menghasilkan aplikasi-aplikasi dengan performansi yang terbaik. Sebagai sebuah platform, Java terdiri atas dua bagian utama, yaitu: 1. Java Virtual Machine JVM 2. Java Application Programming Interface Java API Sun membagi arsitektur Java membagi tiga bagian, yaitu: 1. J2EE Java 2 Enterprise Edition J2EE adalah kelompok dari beberapa API Application Programming Interface dari Java dan teknologi selain Java. J2EE dirancang untuk membuat aplikasi yang rumit. J2EE sering dianggap sebagai middle-ware atau teknologi yang berjalan di server, namun sebenarnya J2EE tidak hanya terbatas untuk itu. Faktanya J2EE juga mencakup teknologi yang dapat digunakan disemua lapisan dari sebuah sistem informasi. Implementasi J2EE menyediakan kelas dasar dan API dari Java yang mendukung pengembangan dan rutin standard untuk aplikasi client maupun server, termasuk aplikasi yang berjalan di web browser. untuk aplikasi berbasis web, aplikasi sistem tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi. 2. J2SE Java 2 Standard Edition J2SE merupakan bahasa pemrograman Java untuk aplikasi desktop yang merupakan object-oriented programming. Pada J2SE ,terdiri dari dua buah produk yang dikeluarkan untuk membantu dalam membuat aplikasi tanpa tergantung dari platform yang digunakan, yaitu: 1 Java SE Runtime Environment JRE Java Runtime Environment JRE menyediakan perpustakaan, Java Virtual Machine JVM, dan komponen lain untuk menjalankan applet dan aplikasi yang ditulis dengan bahasa pemrograman Java. 2 Java Development Kit JDK Java Development Kit JDK merupakan perangkat lunak yang digunakan untuk menajemen dan membangun berbagai aplikasi Java. JDK merupakan superset dari JRE, berisikan segala sesuatu yang ada di JRE ditambahkan compiler dan debugger yang diperlukan untuk mengembangkan applet dan aplikasi. 3. J2ME Java 2 Micro Edition J2ME adalah lingkungan pengembangan yang dirancang untuk meletakan perangkat lunak Java pada barang elektronik beserta perangkat pendukungnya. Pada J2ME, jika perangkat lunak berfungsi baik pada sebuah perangkat, maka belum tentu juga berfungsi baik pada perangkat yang lainnya. J2ME biasa digunakan pada telepon selular, pager, personal digital assistants PDA dan sejenisnya. J2ME adalah bagian dari J2SE, karena itu tidak semua librabry yang ada pada J2SE dapat digunakan pada J2ME. Tetapi J2ME mempunyai beberapa library khusus yang tidak dimiliki J2SE.

2.11.1. Sejarah Java

Sejarah Java berawal pada tahun 1991 ketika perusahaan Sun Microsystem memulai Green Project, yakni projek penelitian untuk membuat bahasa yang akan digunakan pada chip-chip embedded untuk device intelligent consumer electronic. Bahasa tersebut haruslah bersifat multiplatform, tidak tergantung kepada vendor yang memanufaktur chip tersebut. Dalam penelitiannya, Projek Green berhasil membuat prototype semacam PDA Personal Data Assistance yang dapat berkomunikasi antara satu dengan lain dan diberi nama Star 7. Ide berawal untuk membuat sistem operasi bagi Star 7 berbasis C dan C++. Setelah berjalan beberapa lama, James Gosling, salah seorang anggota team, merasa kurang puas dengan beberapa karakteristik dari kedua bahasa tersebut berusaha mengembangkan bahasa lain. Bahasa tersebut kemudian dinamakan Oak, diinspirasi ketika dia melihat pohon di seberang kara ruang kantornya. Belakangan Oak beralih nama menjadi Java. Karena pada awalnya ditujukan untuk pemrograman device kecil, Java memiliki karakteristik berukuran kecil, efisien, dan portable untuk berbagai hardware. Projek Green sempat terancam terhenti karena dalam perkembangannya, device ini belom memiliki pasar seperti yang diramalkan semula. Selanjutnya Java diarahkan untuk pemrograman internet. Secara kebetulan, fitur- fitur Java sangat sesuai bagi pengembangan internet sehingga dalam beberapa tahun belakangan ini Java telah menjadi primadona untuk pemrograman yang berbasis internet Benny, 2004:6.

2.11.2. Keunggulan Java

Java memiliki beberapa keunggulan bila dibandingkan dengan bahasa pemrograman lainnya. Ada beberapa aspek yang akan dibahas disini, yaitu: 1. Java bersifat sederhana dan relatif murah Java dimodelkan sebagian dari bahasa C++, namun dengan memperbaiki beberapa karakteristik C++, seperti mengurangi kompleksitas beberapa fitur, penambahan fungsionalitas, serta penghilangan beberapa aspek pemicu ketidakstabilan sistem pada C++. 2. Java berorientasi pada objek Object Oriented Java adalah bahasa pemrograman yang berorientasi objek OOP, bukan seperti Pascal, Basic, atau C yang berbasis procedural. Dalam memecahkan masalah, Java membagi program menjadi objek-objek, kemudian memodelkan sifat dan tingkah laku masing-masing. Selanjutnya, Java menentukan dan mengatur interaksi antara objek yang satu dengan lainnya. 3. Java bersifat terdistribusi Pada dekade awal perkembangan PC, komputer hanya bersifat sebagai workstation tunggal, tidak terhubung satu sama lain. Saat ini, sistem komputerisasi cenderung terdistribusi, mulai dari workstation client, e-mail server, database server, web server, proxy server, dan sebagainya. 4. Java bersifat Multiplatform Pada umumnya, program yang dibuat dan dkompile di suatu platform hanya bisa dijalankan di platform tersebut. Java bersifat multiplatform, yakni dapat diterjemahkan oleh Java Interpreter pada berbagai sistem operasi. 5. Java bersifat MultiThread Thread adalah proses yang dapat dikerjakan oleh program dalam suatu waktu. Java bersifat Multithreaded, artinya dapat mengerjakan beberapa program dalam waktu yang hampir bersamaan Benny, 2004:7.

2.11.3. Konsep Pemrograman Java

Java merupakan bahasa pemrograman berorientasi objek. Pada bagian ini akan dibahas konsep-konsep penting dalam pemrograman berorientasi objek, sehingga kita akan lebih mudah dalam mempelajari bahasa Java Fikri, 2005 : 74-105 1. Object Pada dasarnya semua benda yang ada di dunia nyata dapat dianggap sebagai sebuah objek. Jika perhatikan lebih lanjut, pada dasarnya ada dua karakteristik yang utama pada sebuah objek, yaitu: 1 setiap objek memiliki atribut sebagai status yang kemudian akan disebut sebagai state, 2 setiap objek memiliki tingkah laku yang kemudian akan disebut sebagai behavior. Contoh sederhananya adalah: objek sepeda. Sepeda memiliki atribut state: pedal, roda, jeruji, dan warna. Sepeda memiliki tingkah laku behaviour: kecepatan menaik dan menurun, dan perpindahan gigi sepeda. 2. Class Class berbeda dengan objek. Class mrupakan prototipe yang mendefinisikan variabel-variabel dan method-method secara umum. Sedangkan objek pada sisi yang lain merupakan instansiasi dari suatu kelas. 3. Enkapsulasi Dalam sebuah objek yang mengandung variabel-variabel dan method-method, dapat ditentukan hak akses pada sebuah variable atau method dari objek. Pembungkusan variabel dan method dalam sebuah objek dalam bagian yang terlindungi inilah yang disebut dengan enkapsulasi. Jadi, enkapsulasi dapat diartikan sebagai bungkusan wrapper pelindung program dan data yang sedang diolah. Pembungkusan ini mendefinisikan perilaku dan melindungi program dan data yang sedang diolah agar tidak diakses sembarang oleh program lain. 4. Inheritance Class dapat didefinisikan dengan referensi pada class yang lain yang telah terdefinisi. Inheritance merupakan pewarisan atribut dan method pada sebuah class yang diperoleh dari class yang telah terdefinisi tersebut. Setiap subclass akan mewarisi state variabel-variabel dan behavior method-method dari superclass-nya. Subclass kemudian dapat menambahkan state dan behavior baru yang spesifik dan dapat pula memodifikasi overrid state dan behavior yang diturunkan oleh superclass- nya. 5. Polimorfisme Kata polimorfisme yang berarti satu objek dengan banyak bentuk yang berbeda 6. Tipe data Setiap variabel harus memiliki tipe data. Tipe data pada suatu variabel akan menentukan nilai dari variabel yang dapat dimuat dan operasi-operasi yang dapat dilakukannya. Contohnya sebuah tipe data interger int dapat memuat hanya nilai-nilai interger baik positif maupun negatif 7. Operator Operator merupakan simbol yang biasa digunakan dalam menulis suatu penyataan statement dalam bahasa pemrograman apapun. Operator akan melakukan suatu operasi terhadap operand sesuai dengan fungsinya. Dalam java terdapat beberapa operator antara lain: 1. Operator Penugasan Operator ini adalah operator yang paling sederhana dan hanya dilambangkan dengan karakter „=‟. Operator ini digunakan untuk menugaskan suatu nilai ke suatu variabel. Contoh: int hitung = 4; 2. Operator Matematika Operator ini digunakan dalam ekspresi matematika. Berikut ini daftar operator matematika yang dikenal dalam Java: Tabel 2.1 Operator Matematika Operator Keterangan + Penjumlahan - Pengurangan Perkalian Pembagian Modulus sisa bagi sumber: Fikri, 2005:50 3. Operator Penaikan dan Penurunan Operator ini digunakan untuk menaikkan atau menurunkan suatu nilai interger bilangan bulat sebanyak satu satuan, dan hanya digunakan pada variabel. Tabel 2.2 Operator Penaikan dan Penurunan Operator Keterangan ++ Penambahan dengan nilai satu -- Pengurangan dengan niali satu sumber: Fikri, 2005:50 Sebagai contoh: x = x +1; dapat ditulis menjadi: x++ ; atau ++x ; 4. Operator Bitwise manipulasi bit Operator ini digunakan untuk operasi secara langsung terhadap bit yang menyusun suatu bilangan. Daftar operator bitwise dalam Java adalah sebagai berikut: Tabel 2.3 Operator Bitwise Operator Arti - Bitwise negasi NOT Bitwise AND | Bitwise OR Bitwise XOR Geser kanan Geser kanan tanpa mempertahankan sign dengan nilai 0 sebagai pengisi bit paling kiri Geser kiri sumber: Fikri, 2005:55 Karena operasi bitwise manipulasi hingga ke bagian yang paling kecil dari suatu bilangan, yaitu bit maka diperlukan penjelasan lebih lanjut tentang bagaimanan Java menyimpan representasi suatu bilangan dalam bit, terutama sekali untuk representasi bilangan negatif. Java menyimpan representasi dari suatu bilangan sebagai bilangan basis dua binary yang tersusun atas bit. Contoh: bilangan binary: 00100111, angka 0 dan 1 yang membentuk bilangan binary inilah yang disebut bit.

2.12. Java Server Pages

Java Server Pages yang disingkat JSP merupakan teknologi Java yang menyederhanakan proses pengembangan situs web. Dengan JSP, perancang web dan pengembang aplikasi dapat dengan cepat mengembangkan elemen dinamik dan statik dari halaman web dengan menggunakan embedded Java dan beberapa tag sederhana. Dengan tag tersebut, perancang HTML dapat mengakses data dan business logic yang tersimpan dalam objek Java skip Java atau Java Beans tanpa harus menguasai kerumitan detail pengembangannya. Pemrograman Java dapat lebih fokus dalam menulis kode program untuk mengimplementasikan kapabilitas Java pada halaman web. Berkas JSP adalah sebuah teks dengan ekstensi .jsp yang menggantikan posisi dari berkas HTML tradisional. Sama seperti servlet, JSP bersifat server-side. Saat browser memanggil berkas JSP, browser akan mengirimkannya ke web server yang dalam hal ini adalah server Hyper Text Transport Protocol HTTP. Bagian statik yang berupa tag-tag HTML dari halaman web akan langsung dilewatkan. Bagian dinamik yang berupa kode program Java akan dieksekusi dan dikompilasi menjadi servlet oleh mesin JSP yang telah aktif pada web server. Hasilnya kemudian akan digabungkan kembali dan dikirim balik ke browser yang aktif pada komputer klien. JSP menyediakan teknologi yang tepat untuk aplikasi-aplikasi berbasis web. JSP saat ini merupakan bagian integral dari pengembangan aplikasi berbasis web dengan menggunakan teknologi Java Foenadioen dan Prakoso, 2008:73.

2.13. Tomcat