PEMROGRAMAN WEB J2EE
Java memiliki 3
platform, yang terdiri dari :
1. Java Standard Edition (J2SE)
Platform Standar pada Java yang bertugas untuk rancangan antarmuka pemakai yang
dapat berupa masukan ataupun keluaran. Contohnya : Java dan GUI
2. Java Micro Edition (J2ME)
Platform menengah pada java yang bertugas sebagai Mobile Application atau
sebagai embedded System. Contoh : Handphone, PDA, Web Phone, Navigasi mobil
3. Java Enterprise Edition (J2EE)
Platform teratas java yang memiliki cakupan luas. Digunakan sebagai
pengembangan aplikasi dalam bentuk komponen.
Pembahasan lebih dalam
mengenai J2EE.
Apa itu J2EE ?
J2EE adalah sebuah
spesifikasi bukan produk yang berwujud nyata. Memiliki fungsi sebagai
enterprise yang berbasis komponen. Komponen yang dimaksud adalah sebuah
perintah pada java yang langsung dapat diguanakan dengan fungsi yang dimiliki
masing-masing komponen. Contoh : import.swing.JOptionPane
Komponen ini dapat
langsung kita digunakan pada java(aplikasi netbeans), tanpa harus memikirkan
bagaimana cara membuat komponen itu. Pengguna hanya tinggal memanggil dan
menggunakan komponen, maka komponen akan bekerja sesuai dengan fungsinya.
Komponen import.swing.JOptionPane digunakan untuk menampilkan kotak dialog
JOptionPane. Komponen jika dijual akan menghasilkan uang yang banyak, karena
tidak semua orang dapat membuat komponen. Karena tingkat kesulitannya yang
cukup tinggi.
Contoh aplikasi server
yang digunakan : glassfish, Oracle AS, JBOS, IBM Websphere, JRun, JOnAS. Server
Apache Tomcat adalah milik Tomcat, dan digunakan pada Java Free. Aplikasi
server milik java adalah Glassfish
Komponen pada J2EE
Komponen J2EE merupakan
unit-unit yang program yang masing-masing memiliki fungsionalitas. Terdiri dari
:
1. Client dan Applet, yang merupakan komponen yang
berjalan pada Client
2. Web, merupakan java servlet dan java server yang
pages yang berjalan pada server
3. Enterprise JavaBeans (EJB) yang merupakan bisnis
komponen dan berjalan pada server
J2EE Container
Penjelasan :
1. J2EE Server merupakan server dari J2EE yang menyediakan 2 container
yaitu : Web Container dan EJB Container
1.1 Web Container adalah web server berbasis java yang menampung
komponen web serta melakukan pengelolaan dan eksekusi terhadap JSP Page
dan komponen pada servlet.
Beberapa pembuat Web Container antara lain:
- Free software: Apache Tomcat, JResin, Jetty, Sun Glassfish
- Sun SJSAS, JBoss, IBM Websphere, Oracle Weblogic.
Web, seperti servlet dan JSP. Terdiri
dari file-file class servlet atau file-file class yang
dibutuhkan JSP, file gambar,
file HTML, dan deskriptor dari web deployment. Package yang
digunakanbiasanya adalah WAR dengan ekstensi file .war.
Bagian dari web container :
- Servlets
Teknologi Servlet adalah teknologi utama pada java untuk menambahkan fungsi ke server yang digunakan untuk merespon permintaan dari model. Mempunyai kemampuan untuk membaca kumpulan data yang diminta oleh server dan menghasilkan response yang dinamis yang berdasarkan pada data tersebut, servlet tidak terbatas pada kondisi HTTP.
Teknologi Servlet adalah teknologi utama pada java untuk menambahkan fungsi ke server yang digunakan untuk merespon permintaan dari model. Mempunyai kemampuan untuk membaca kumpulan data yang diminta oleh server dan menghasilkan response yang dinamis yang berdasarkan pada data tersebut, servlet tidak terbatas pada kondisi HTTP.
- JavaServerPages (JSP)
JSP seperti HTML. Menghasilkan keluaran dengan
cara lain pada pemograman Java seperti : mencetak karakter String ketika
mengeluarkan output, dalam hal ini HTTP-response, sangat complex dan sangat
sulit untuk melakukan proses encode HTML melalui penggunaan String literal.
1.2 EJB (Enterprise Java Beans) Container
Model komponen berbasiskan container yang dapat
didistribusikan dan menangani pengelolaan container pada komponen Java.
Client dari aplikasi EJB adalah
aplikasi lain, bukan end-user. Biasanya digunakan untuk lingkup
bisnis
EJB, terdiri dari file-file class dari
enterprise bean dan deskriptor dari EJB deployment. EJBbiasanya menggunakan
package berupa JAR dengan ekstensi file .jar.
2. Aplikasi Client
Memiliki fungsi untuk memberikan pelayanan
terhadap client. Terdiri dari file class client dan deskriptor client.
3. Applet Container
Memiliki fungsi untuk melakukan
pengaturan terhadap applet,
mengelola, serta mengeksekusi applet. Terdiri dari browser web dan Java Plug-in
yang berjalan secara bersama-sama
J2EE Component And Container
Penjelasan :
1. JMS (Java Messaging Service)
Memberikan suatu API yang umum dan framework
yang membuka pengembangan aplikasi-aplikasi messaging yang portable dalam
bahasa pemrograman java. JMS API mendukung model-model pemrograman messaging
yang umum pada saat ini.
2. JNDI ( Java Naming and Directory Interface )
JNDI adalah API Java untuk naming service dan
directory. Naming service atau layanan penamaan adalah sebuah layanan yang
menyediakan pembuatan nama standar untuk satu kumpulan data. Konsep kunci untuk
mengingat sebuah naming service yaitu bahwa jndi menyediakan nama
unik untuk setiap entri yang didaftarkan, yang dinamakan dengan binding.
3. JTA (Java Transaction API)
Berguna untuk implementasi aplikasi distribusi
secara tradisional
4. Java Mail
Menyediakan framework platform independence dan
protokol independence untuk membangun aplikasi Java berdasarkan mail
5. RMI- IIOP (Remote Method Invocation over the
Internet Inter-ORB Protocol)
IIOP pada CORBA, ORPC pada DCOM, atau JRMP pada
Java RMI) untuk mengirimkan pesan (message) ke server.
Internet Inter-ORB Protocol (IIOP) merupakan protokol jarak jauh yang
mendasari.
6. JDBC (Java database connectivity)
Berfungsi untuk mengakses sistem database
manajemen. JDBC memiliki beberapa kegunaan, yaitu membantu programmer
untuk koneksi dengan data source, membantu mengirimkan query dan update
statements ke database, dan menerima serta memroses hasil yang didapatkan dari
database sesuai dengan query yang diberikan.
Aplikasi web dengan J2EE
dibangun dengan menggunakan :
- Java Runtime environment : Yang berjalan pada
server dan client
- JSP Page & Servlet : Memiliki tugas untuk
menghandle request dan mengenerate dynamic
contact
- Komponen Server-Side JavaBean : Sebagai
encapsulation dan state
- Static HTML dan sejenisnya
- Client Side Java Applets, Komponen JavaBean dan
aArbitrary Java Class Files
KONSEP
CLIENT-SERVER
Arsitektur Client-Server Dari Perspektif
Web
___ Client
___ Server
Pada jenis arsitektur ini, sebuah program client
terhubung pada sebuah server untuk informasi yang dibutuhkan untuk melengkapi
tugas-tugas yang telah diset oleh user. Client digunakan untuk aplikasi web
thin clients. Program client, pada hal ini adalah browser, hanya sebuah
interface yang oleh user digunakan untuk melaksanakan tugas-tugas. Yang
lainnya, dari data yang user perlukan untuk dioperasikan, logika yang
menentukan aliran program dan eksekusi, berada pada server. Dari suatu
perspektif web base maka server client memiliki beberapa tugas :
- Server menerima permintaan-permintaan dari para client web browser
dan kemudian meresponnya.
- Beberapa permintaan yang datang dari client disertai nama dan
alamat item yang client cari, sebagaimana beberapa data user yang disediakan.
- Server menerima permintaan tersebut,
memprosesnya, dan kemudian merespon data yang dicari oleh client atau sebuak
kode error yang mengindikasikan bahwa item tidak terdapat pada server atau jika
terjadi beberapa error lain.
1. Request
Dilakukan oleh client untuk meminta membuka sebuah halaman yang diinginkan dari
server (URL)
2. Respon
Dilakukan oleh server unutk memberikan respon
terhadap permintaan halaman/request dari client, dapat berupa dokument atau
pemberitahuan
3. Client
Berupa browser yang berfungsi sebagai interface
yang digunakan oleh user. Dalam hal ini client melakukan kegiatan meminta data
kepada server
4. Server
Adalah data yang diperlukan user untuk operasi.
Berisi logika aliran program dan eksekusi.
Permintaan dari client :
- Dikirim melalui URL
- Ditanggapi oleh protocol HTTP
Beberapa Istilah Penting
:
1. HTML (Hypertext Markup Language )
Kumpulan perintah-perintah untuk web browser
tentang bagaimana menampilkan sesuatu untuk user. Diupdate oleh World Wide Web
Consortium (W3C). Merupakan sebuah standar terbuka, setiap orang dapat
mengaksesnya.
2. Web Browser
Tools atau aplikasi yang digunakan untuk membuka
atau menjelajah halaman internet baik itu berupa text, gambar, suara, video dan
dokumen-dokumen web lainnya. Web browser juga sering disebut dengan peramban,
jadi dengan web browser inilah kita dapat menjelajah halaman internet.Contoh :
Mozila, Google Chrome, Opera, Internet Explorer, Opera Mini
3. Web Server
Sebuah software yang memberikan layanan berbasis
data dan berfungsi menerima permintaan dari HTTP atau HTTPS pada client yang dikenal dan biasanya
kita kenal dengan nama web browser dan untuk mengirimkan kembali yang hasilnya
dalam bentuk beberapa halaman web dan pada umumnya akan berbentuk dokumen HTML
Prinsip kerja web server :
1. User/client mengetikkan URL pada computer client
2. Domain name diubah menjadi IP Address melalui
DNS
3. Client berhubungan dengan server melalui IP
Address dan Port
4. Client menentukan saluran
5. Client mengirim HTTP Request ke server
6. Server menampilkan file yang akan dikirim ke
client
7. Apabila status pengiriman gagal atau berhasil,
akan diberi konfirmasi
8. Setelah didapat konfirmasi, hubungan diputus
4. HTTP (Hypertext Transfer Protocol)
Protokol jaringan lapisan aplikasi yang digunakan
untuk sistem informasi terdistribusi, kolaboratif, dan menggunakan hipermedia.
Penggunaannya banyak pada pengambilan sumber daya yang saling terhubung dengan
tautan, yang disebut dengan dokumen hiperteks
5. URL (Uniform Resource Locator)
Rangkaian karakter format standar
tertentu, yang digunakan untuk menunjukkan alamat suatu sumber seperti dokumen
dan gambar di Internet
6. URLs
Merupakan cara untuk meng-code protokol, DNS
atau IP Address menjadi bentuk string.
http
: sebagai protocol
//www.pcr.ac.id
: sebagai komputer yang dituju
/dosen
: sebagai folder yang ada pada computer
/bahan_kuliah.html
: sebagai file/dokumen yang diambil
7. HTTP Requests
Membaca dan menjelaskan permintaan pesan.
Permintaan-permintaan dari client ke server berisikan informasi tentang
macam-macam data yang user inginkan. Salah satu item informasi yang
dienkapsulasi pada permintaan HTTP adalah sebuah nama method.
8. HTTP Response
Memberikan respon terhadap permintaan Client.
HTTP yang merespon dari server yang berisi headers dan body pesan, seperti yang
permintaan HTTP lakukan. Mereka menggunakan kumpulan header yang berbeda,
meskipun demikian disini kita tidak perlu terlalu dalam membahasnya secara
detail. Cukup dengan mengatakan bahwa headers berisi informasi tentang protokol
HTTP yang digunakan pada server, sebagaimana tipe dari isi yang dienkapsulasi
ke dalam body pesan.
HTTP menggunakan urutan Request/Response:
- HTTP client membuka koneksi dan mengirim sebuah
pesan permintaan pada HTTP server;
- Server mengirimkan pesan respon, biasanya
berisikan resource yang diminta.
- Setelah mengirimkan respon, server menutup
koneksi (membuat HTTP menjadi protokol tanpa status, contoh, tidak memelihara
beberapa informasi koneksi diantara transaksi).
Method pada Request :
1. GET
Merupakan method HTTP paling sederhana dan
digunakan sebagian besar untuk meminta resource tertentu dari server, apakah
berupa halaman web, file gambar grafis, atau sebuah
dokumen, dan lain-lain.
GET dapat juga digunakan untuk mengirim data di
atas server, meskipun demikian hal itu mempunyai batasan-batasan. Jumlah total
karakter yang dapat dienkapsulasi ke dalam permintaan GET adalah terbatas,
sehingga untuk situasi dimana banyak data perlu dikirimkan ke server, tidak
semua pesan dapat disampaikan.
Batasan lain method permintaan GET ketika
mengirim data adalah data yang Anda kirim menggunakan method ini ditambahkan
pada URL yang Anda kirim ke server. (Untuk sekarang, asumsikan URL sebagai
alamat unik yang akan Anda kirim ke server sebagai penandaan lokasi yang Anda
minta). Salah satu permasalahannya adalah URL dari beberapa permintaan yang
Anda inginkan ditampilkan pada bar browser pada beberapa browser. Hal ini
berarti, bahwa beberapa data sensitif seperti password atau informasi kontak
(contact information) dapat diterlihat oleh siapapun.
Keuntungan dari penggunaan GET dalam pengiriman
data di atas server adalah permintaan URL dari permintaan GET dapat dibookmark
oleh browser. Hal ini berarti bahwa user dapat dengan mudah membookmark
permintaannya dan mengakses setiap saat dari pada melalui proses tiap waktu.
Hal ini juga dapat membahayakan; jika bookmark secara fungsional bukan
merupakan sesuatu yang Anda inginkan pada user Anda, sebagai gantinya
menggunakan method lain.
2. POST
Jenis permintaan ini didesain seperti browser dapat membuat permintaan kompleks dari server. Mereka didesain sehingga user, melalui browser, dapat mengirim banyak data ke server. Form kompleks secara umum dicapai dengan menggunakan permintaan POST, sebagaimana form sederhana yang memelukan proses upload file ke server.
Jenis permintaan ini didesain seperti browser dapat membuat permintaan kompleks dari server. Mereka didesain sehingga user, melalui browser, dapat mengirim banyak data ke server. Form kompleks secara umum dicapai dengan menggunakan permintaan POST, sebagaimana form sederhana yang memelukan proses upload file ke server.
Perbedaan yang nyata antara method GET dan POST terletak pada cara mengirimkan data ke
server. Seperti yang dinyatakan sebelumnya, GET hanya menambahkan data ke URL
yang akan mengirim. POST, di sisi lain, mengenkapsulasi atau menyembunyikan
data di dalam body pesan (message body) yang dikirim. Ketika server menerima
permintaan dan menentukan bahwa itu merupakan sebuah permintaan POST, dapat
dilihat dari body pesan data tersebut.
nice information
BalasHapuslampu service hp 5 in1