Arsitektur Java Enterprise
October 29, 2009 by dancpm
Aplikasi Enterprise umumnya memiliki arsitektur layer, dimana setiap layer memiliki tanggungjawab berbeda. Java Enterprise mempunyai 3 layer, yaitu:
- Presentation layer : Melakukan penanganan tampilan dan interaksi dengan user,
- Business layer : Melakukan eksekusi business logic,
- Database layer : Berfungsi menangani storage.
Keuntungan layering:
- Menyederhanakan problem, agar tidak terlalu kompleks
- Fleksibel
* Masing-masing layer memiliki tanggung jawab berbeda
* Masing-masing layer dapat didevelop oleh developer yang berbeda
* Masing-masing layer dapat didevelop oleh developer yang berbeda
*presentation dan business layer dapat ditangani dengan menggunakan produk software berbeda dan berada pada komputer yang berbeda
Teknologi yang digunakan:
- Presentation layer : HTML, Javascript, JSP, JSF, Servlets
- Business layer : EJB (Enterprise JavaBeans)
* session beans, message-driven beans
* persistence sublayer: entity, persistence provider - Database layer : Relational Database
e.g.: mySQL, Oracle
Deployment: Thick vs Thin client
- Thick : Aplikasi disisi client, didevelop dengan Teknologi Swing/Java Desktop
- Thin : Web-based application, interaksi client memakai browser
Interaksi antar komponen: Remote vs Local
Interaksi antar komponen/layer pada Aplikasi Java Enterprise dapat berupa:
Interaksi antar komponen/layer pada Aplikasi Java Enterprise dapat berupa:
- Remote : jika berada pada proses/komputer berbeda
- Local : jika berada pada proses/JVM yang sama
Web Server: Glassfish
Glassfish: Enterprise Java application server yang bersifat opensource
Glassfish: Enterprise Java application server yang bersifat opensource
- Dikembangkan oleh Sun
- Java EE reference implementation
Tutorial tentang Glassfish akan saya coba hadirkan pada posting berikutnya
Application Packaging Format
- Sebuah aplikasi Java Enterprise dikemas dalam format *.ear.
- Ear terdiri atas 1 atau lebih modul, dan deskriptor aplikasi
- Modul dapat berupa:
*Web module, EJB module, App. Client module, Resource Adapter module
*Setiap modul memiliki deskriptor masing-masing
*Setiap modul memiliki deskriptor masing-masing
Struktur Ear
Root
|
+——–Resource Adapter Module
|
+——–App Client Module
|
+——–EJB Module
|
+——–Web Module
|
+——–META-INF——–application.xml, sun-application.xml
|
+——–Resource Adapter Module
|
+——–App Client Module
|
+——–EJB Module
|
+——–Web Module
|
+——–META-INF——–application.xml, sun-application.xml
Deskriptor
- Deskriptor : informasi tentang modul/aplikasi yang terdapat pada sebuah modul/aplikasi
- Deskriptor ada 2 macam:
- File konfigurasi (format xml)
*ear : application.xml (sun-application.xml) berisi deskripsi modul yang ada dalam sebuah aplikasi (tidak diperlukan)
*ejb : ejb-jar.xml (sun-ejb-jar.xml)
deskripsi enterprise beans & konfigurasinya (dapat menggunakan anotasi pada EJB 3)
*web : web.xml (sun-web.xml)
konfigurasi web app, context parameter servlet, servlet mapping, filter, filter mapping security constraint
* Standar Java EE : application.xml, ejb-jar.xml, web.xml
* Spesifik implementasi : sun-application.xml, sun-ejb-jar.xml
* Spesifik implementasi : sun-application.xml, sun-ejb-jar.xml
Tidak ada komentar:
Posting Komentar