Anda di halaman 1dari 10

Materi Strut

Pengertian Strut
• Struts adalah kerangka kerja aplikasi web sumber terbuka untuk
mengembangkan aplikasi web Java EE . Ia menggunakan dan
memperluas Java Servlet API untuk mendorong pengembang
mengadopsi arsitektur model-view-controller (MVC). Awalnya dibuat
oleh Craig McClanahan dan disumbangkan ke Apache Foundation
 pada Mei 2000. Sebelumnya berlokasi di bawah Proyek Apache 
Jakarta dan dikenal sebagai Java Struts , ini menjadi proyek Apache
tingkat atas pada tahun 2005.
• Kerangka WebWork dipisahkan dari Apache Struts yang bertujuan
untuk menawarkan penyempurnaan dan penyempurnaan sambil
mempertahankan arsitektur umum yang sama dari kerangka Struts
asli. Namun, diumumkan pada bulan Desember 2005 bahwa Struts
akan bergabung kembali dengan WebWork. WebWork 2.2 telah
diadopsi sebagai Apache Struts 2 , yang mencapai rilis penuh
pertamanya pada Februari 2007.
Tujuan Struts
• Dalam aplikasi web Java EE standar , klien biasanya akan menelepon
ke server melalui formulir web . Informasi tersebut kemudian
diserahkan ke Java Servlet yang berinteraksi dengan database dan
menghasilkan respons berformat HTML , atau diberikan ke dokumen 
JavaServer Pages (JSP) yang menggabungkan kode HTML dan Java
untuk mencapai hasil yang sama. Kedua pendekatan tersebut sering
dianggap tidak memadai untuk proyek besar karena keduanya
mencampurkan logika aplikasi dengan presentasi dan menyulitkan
pemeliharaan.
Tujuan Struts adalah untuk memisahkan model (logika aplikasi yang
berinteraksi dengan database) dari tampilan (halaman HTML disajikan
ke klien) dan pengontrol (contoh yang meneruskan informasi antara
tampilan dan model). Struts menyediakan pengontrol (disebut
servlet ActionServlet) dan memfasilitasi penulisan template untuk
tampilan atau lapisan presentasi (biasanya di JSP, tetapi XML / XSLT dan 
Velocity juga didukung). Pemrogram aplikasi web bertanggung jawab
untuk menulis kode model, dan untuk membuat file konfigurasi
pusat struts-config.xmlyang menyatukan model, tampilan, dan
pengontrol.
• Permintaan dari klien dikirim ke pengontrol dalam bentuk "Tindakan"
yang ditentukan dalam file konfigurasi; jika pengontrol menerima
permintaan seperti itu, ia akan memanggil kelas Tindakan terkait yang
berinteraksi dengan kode model khusus aplikasi. Kode model
mengembalikan "ActionForward", sebuah string yang memberi tahu
pengontrol halaman keluaran apa yang akan dikirim ke
klien. Informasi diteruskan antara model dan tampilan dalam bentuk 
JavaBeans khusus 
Framework Struts

• Dapat dipecahkan menjadi menjadi 3 area utama, sesuai


design MVC
• Arsitektur Model-View-Controller adalah penjelasan
bagaimana membagi komponen aplikasi kedalam tiga
kategori yang berbeda yaitu model, view dan controller.
• 1.  Model
• Dimana implementasinya disini berupa class Action, menyediakan logik bisnis yang harus ditulis
oleh kita, developer.Bagaimana nantinya interaksi antara Controller dan class Actionyang kita
progra, nantinya akan berbasis pada sebuah file konfigurasi yang dapat kita modifikasi secara
mudah lewat file yang namanya : struts-config.xml
• 2. View
• View merupakan sekumpulan tag library dari JSP, untuk memudahkan kita dalam membuat
form secara cepat. (anda bisa bayangkan form Struts disini hampir sama dengan form
HTMLyang biasa anda buat.)
• 3. Controller
• Merupakan sebuah servlet, yang akan mengtransfer semua request yang datang dari HTTP ke
Action yang telah diset melalui file xml yang sudah dijelaskan diatas.
• Sekarang mari kita coba membuat project baru Struts dengan menggunakan maven
Bagaimana Struts Bekerja:
1.Ketika kita semua sadar akan fakta bahwa masing-masing aplikasi yang kita kembangkan mempunyai penyebaran
descriptor yaitu. WEB-INF/WEB.XML. dan Di dalam file itu WEB-INF/WEB.XML aplikasi struts kita harus
mengatur struts itu Dan Actionservlet yang menangani semua permintaan dibuat oleh web browsers ke mapping
yang sudah ditentukan. Actionservlet merupakan komponen central dari struts controller. Servlet ini pada dasarnya
melaksanakan dua berbagai hal penting. Yang pertama adalah ketika container mendapatkan start (get starts) untuk
memprosesnya dari membaca file konfigurasi struts dan mengisinya ke dalam memori dari method init() dan Yang
kedua adalah menginterupsi HTTP request method doGet() dan doPost() dan menanganinya sewajarnya.
2.Di dalam struts aplikasi, kita mempunyai file xml yang lain yang mana untuk struts configuration file dan
dinamai struts.config.xml. nama file ini dapat diubah dan struts configuration file ini dapat diatur oleh file web.xml,
file ini di tempatkan dibawah WEB-INF direktori web aplikasi. Dokumen Xml itu mendeskripsikan semua atau
bagian dari aplikasi struts. File ini digunakan untuk alur paths dengan komponen controller dari aplikasimu
3.Karena masing-masing action kita juga harus mengkonfigurasi struts dengan nama yang menghasilkan halaman
yang akan dijadikan sebagai suatu hasil action itu. Di dalam aplikasi kita dapat lebih dari satu pandangan yang
mana tergantung pada hasil dari suatu action. yang satu adalah untuk success dan yang satu lagi failure. Jika hasil
dari action itu adalah success kemudian action akan menceritakan kepada ActionServlet bahwa action itu telah
success. Struts mengetahui bagaimana cara maju ke halaman yang spesifik kepada tujuan yang terkait.
1. Action dapat juga mengambil associate dengan suatu JavaBean di file konfigurasi struts.
JavaBean tak lain hanya suatu kelas yang mempunyai method setter dan getter, method tersebut
dapat digunakan untuk komunikasi antara view dan controller layer. JavaBean ini adalah
validated dengan permohonan method validate() pada ActionForm oleh bantuan dari Struts
System. Client mengirimkan request dengan form format yang normal dengan menggunakan
method Get or Post dan Struts System akan mengupdate data di Bean sebelum memanggil
komponen controller.
2. View kita menggunakan struts dan dapat juga dengan halaman JSP, Velocity Templates, halaman
XSLT dll. Di dalam struts ada satu set tag JSP yang telah di bundle dengan distribusi struts. Tapi
tidak wajib digunakan, gunakan saja hanya tag JSP. Bahkan file HTML sederhana dapat
digunakan dalam aplikasi Struts. Tapi itu hanyalah sebuah kerugian jika kita menggunakan
HTML, karena kita tidak bisa mengambil keuntungan secara penuh dari penyedian fitur dinamis
di dalam Struts Framework. Framework meliputi satu set custom tag libraries memudahkan kita
menciptakan user interface itu dapat interaksi penuh dengan ActionForm Beans.

Anda mungkin juga menyukai