Tutorial Struts 2 - Solusi Satu Atap untuk Pemula



Artikel Tutorial Struts 2 ini akan membantu Anda dalam memulai dengan kerangka kerja Struts 2 untuk mengembangkan aplikasi web J2EE bersama dengan demonstrasi kode.

Jika Anda mencari file yang dapat membantu Anda dalam mengembangkan aplikasi web JEE dengan cepat dan efisien, maka Struts 2 adalah solusi yang tepat untuk Anda. Struts 2 adalah kerangka kerja sumber terbuka yang banyak digunakan di pasar. Melalui Tutorial Struts 2 ini, saya akan membantu Anda untuk memulainya bersama dengan implementasi praktis.

Di bawah ini adalah topik yang akan saya bahas dalam tutorial Struts ini:





Apa itu Struts?

Dalam istilah awam, Struts adalah a -berbasis kerangka kerja bersumber terbuka yang membantu dalam mengembangkan aplikasi web di J2EE. Saya tmemperluas dan mempromosikan Model, View, Controller ( MVC ) Arsitektur.Hal ini membuat aplikasi web berkembang dalam teknologi standar sepertiJSP, JavaBeans, dan XML, lebih mudah dipelihara, dapat diperluas, dan fleksibel.

Kerangka Struts pada awalnya dikembangkan oleh Craig McClanahan dan diserahkan ke Apache Foundation pada Mei 2000. Secara bertahap, kerangka ini mengambil posisi sebagai proyek Apache tingkat atas pada tahun 2005 dan kemudian pada Februari 2007, digantikan oleh Struts 2 .



Kerangka Struts secara ekstensif didasarkan pada MVC (Model-View-Controller) paradigma desain. Tujuan utamanya adalah untuk memisahkan Model dari View dan Controller dalam aplikasi untuk mengurangi ketergantungan dan mempromosikan Separation of Concerns (SoC). Dengan kata lain, ini membantu dalam memisahkan logika aplikasi yang terutama berkomunikasi dengan databasedari melalui mana pengguna berinteraksi dengan aplikasi dan contoh yang membantu dalam menyalurkan informasi antara Model dan View.

Fitur Struts 2

  1. Bentuk dan tindakan berbasis POJO :Kelas aksi di Struts diperlakukan sebagai pengontrol dalam aplikasi. Mereka bertanggung jawab untuk menanggapi tindakan pengguna, menjalankan logika bisnis, dan mengembalikan hasil dengan tampilan yang harus ditampilkan. Bertindak sebagai kelas Model juga.
  2. Tag dan Kustomisasi yang Ditingkatkan: Berbagai jenis tag telah diperkenalkan di Struts 2 seperti tag UI, tag kontrol, tag Data, dll yang membantu dalam pengembangan aplikasi.
  3. Fungsi AJAX: Struts 2 mendukung teknologi ajax yang biasanya digunakan untuk menghasilkan permintaan asynchronous. Itu membuat peningkatan kinerja aplikasi dengan hanya mengirimkan data lapangan yang diperlukan ke server.
  4. Integrasi Mudah: Ini menyediakan integrasi yang mudah dengan kerangka kerja Web lain seperti , DWR, SiteMesh, dan Ubin.
  5. Konfigurasi Minimal: Saat menggunakan aplikasi Struts 2, tidak diperlukan konfigurasi overhead. Ia bekerja dengan konfigurasi minimal di mana sebagian besar pengaturan mengambil nilai default kecuali jika ada penyimpangan.
  6. Integrasikan Teknologi Tampilan: Dengan Struts2, Anda dapat dengan mudah berintegrasi dengan berbagai teknologi tampilan seperti XSLT, JSP, Freemarker, kecepatan, dll.
  7. Tema dan Template: Struts 2 memberikan dukungan untuk 3 jenis tema:
    1. Xhtml
    2. Sederhana
    3. Css_xhtml

Di sini XHTML adalah tema default untuk Struts 2 dan terutama digunakan untuk tampilan dan nuansa umum.

Sekarang Anda telah mengetahui apa itu Struts dan berbagai fiturnya, sekarang mari kita lanjutkan dengan artikel Tutorial Struts ini dan pelajari tentang arsitekturnya.



Arsitektur

Arsitektur Struts - Tutorial Struts 2 - EdurekaSeperti yang Anda lihat pada diagram di atas, Struts menggunakan level tinggi Arsitektur MVC . Di sini filter servlet pengiriman Struts2 digunakan untuk mengimplementasikan Kontroler sementara tindakan digunakan untuk mengimplementasikan Model dan View diimplementasikan dengan menggabungkan jenis hasil dan hasil. Dalam arsitektur ini, benang merah, penautan, dan integrasi dengan komponen lain diaktifkan oleh tumpukan nilai dan OGNL. Selain itu, konfigurasi untuk aplikasi web bersama dengan tindakan, interseptor, hasil, dll juga membantu dalam menyalurkan banyak informasi.

Sekarang, izinkan saya menjelaskan alur kerja lengkap selama siklus hidup permintaan yang dibuat oleh pengguna. Di bawah ini saya telah membuat daftar alur kerja langkah demi langkah untuk pemahaman Anda yang lebih baik tentang cara kerja Struts:

  • Ini dimulai dengan permintaan Pengguna yang dikirim ke server untuk meminta beberapa sumber daya.
  • Permintaan ini kemudian diproses oleh Dispatcher Filter untuk menentukan Tindakan yang sesuai.
  • Selanjutnya, fungsi pencegat yang dikonfigurasi dengan benar kemudian diterapkan ke permintaan seperti validasi, unggah file, dll.
  • Setelah Tindakan yang dipilih diputuskan dan dijalankan berdasarkan operasi yang diminta.
  • Dalam kasus, setiap pasca-pemrosesan diperlukan, pencegat yang dikonfigurasi akan dipanggil.
  • Pada akhirnya, hasilnya disediakan oleh view dan dikembalikan ke pengguna.

Saya harap ini membersihkan alur kerja dalam aplikasi Struts. Sekarang, mari kita lihat semua yang Anda butuhkan di sistem Anda untuk memulai Struts di bagian selanjutnya dari Tutorial Struts 2 ini

Pengaturan Lingkungan

Di bawah ini saya telah membuat daftar kebutuhan dasar untuk memulai Struts 2:

  • Jawa
    Jika Anda belum memasang Java di sistem Anda, Anda dapat merujuk ke Instalasi Java artikel.
  • Kucing jantan
    Jika Anda tidak memiliki Tomcat di sistem Anda, Anda dapat mengunjungi sini untuk diunduh gratis.
  • IDE (sebaiknya Eclipse)
    Terakhir, Anda membutuhkan file Eclipse IDE untuk pengembangan aplikasi.

Setelah selesai, Anda siap untuk membasahi kaki Anda dengan Struts. Di bagian selanjutnya dari Tutorial Struts 2 ini, saya akan memberi Anda penjelasan singkat tentang konsep dasar Struts 2.

Konsep dasar

1. Konfigurasi

Dalam aplikasi struts mana pun, ada dua file konfigurasi utama:

  1. file struts.xml: File ini menyimpan informasi mengenaikonfigurasi yang dimodifikasi sebagai tindakan. Ini terutama digunakan untuk menimpa pengaturan default dalam sebuah aplikasi. File ini umumnya dibuat dalam direktori WEB-INF / class di proyek Struts mana pun.
  2. file struts.properties: File ini menyediakan mekanisme yang dapat mengubah perilaku kerangka kerja. Sejakframework menggunakan sejumlah properti yang dapat Anda ubah sesuai kebutuhan Anda.

2. Tindakan

Kelas Tindakan atau Tindakan adalah konsep inti dalam aplikasi Struts 2 mana pun, karena berfungsi sebagai pengontrol dalam pola MVC. Dengan kata lain, kelas Tindakan berisi logika bisnis yang membantu dalam memproses data. Selain itu, kelas tindakan juga bertanggung jawabmenanggapi permintaan pengguna, menjalankan logika bisnis. Ini juga membantu kerangka kerja dalam menentukan dan mengembalikan hasil berdasarkan file konfigurasi (struts.xml), kembali ke pengguna untuk merender halaman View.

Kelas tindakan Stuts2 tidak bersifat tunggal, yaitu satu instance kelas ini akan dibuat dengan setiap permintaan. Karena itu, mereka tidak perlu thread-safe dan sederhana serta independen. Ini membuat pengujian kelas-kelas ini jauh lebih mudah.

File tindakan dapat dibuat dengan tiga cara, yaitu sebagai berikut:

  • Kelas Aksi Sederhana
    Setiap kelas java konkret dapat digunakan sebagai kelas aksi Struts 2 tetapi satu-satunya persyaratan adalah bahwa kelas tersebut harus berisi metode execute () dengan tipe kembalian String. Di bawah ini adalah kode untuk membuat Kelas Aksi sederhana:
paket com.edureka.struts2.action kelas publik DemoAction {public String execute () {return 'Selamat datang!' }}
  • Menerapkan antarmuka Action
    Kelas Tindakan Struts 2 juga dapat dibuat dengan mengimplementasikan antarmuka com.opensymphony.xwork2.Action. Ini berisi metode tunggal yaitu execute () yang harus diimplementasikan oleh kelas pelaksana. Dengan mengimplementasikan antarmuka ini, Anda dapat menggunakan beberapa konstanta seperti SUCCESS, ERROR, NONE, INPUT dan LOGIN yang dapat digunakan untuk halaman hasil.
    Kode di bawah ini menunjukkan contoh yang sama:
paket com.edureka.struts2.action import com.opensymphony.xwork2.Action kelas publik DemoAction mengimplementasikan Action {public String execute () {return SUCCESS}}
  • Memperluas Kelas ActionSupport

Kelas aksi di Struts 2 umumnya memperluas kelas Action Support yang merupakan implementasi default dari antarmuka Action. Ini menyediakan berbagai fungsi penting untuk pengembangan aplikasi web seperti validasi data, pesan tingkat tindakan, pesan kesalahan tingkat tindakan, pesan kesalahan tingkat lapangan dan sumber daya baca yang dibundel, dll.

Di bawah ini adalah implementasi yang sama:

paket com.edureka.struts2.action import com.opensymphony.xwork2.ActionSupport kelas publik DemoAction memperluas ActionSupport {@Override public String execute () melempar Exception {return SUCCESS}}

3. Penangkap

Interceptor bertindak sebagai salah satu pilar utama dari kerangka Struts 2. Itu hanyalah sebuah objekyang dipanggil selama preprocessing dan postprocessing sebuah permintaan.Ini membantu dalam mengontrol dan menjaga kelancaran transisi permintaan dan siklus respons.

Keuntungan utama menggunakan interseptor adalah dapat dicolokkan. Yang saya maksud adalah, jika Anda tidak lagi menggunakan masalah khusus sepertivalidasi, penanganan pengecualian, logging, dll., Anda dapat dengan mudah menghapusnya dari aplikasi tanpa harus menerapkannya kembali. Untuk ini, yang perlu Anda lakukan hanyalah menghapus entri dari file struts.xml.

Kerangka Struts2 menyediakan satu set lengkap pencegat yang telah ditentukan sebelumnya dan tumpukan pencegat umum yang telah saya cantumkan dalam tabel di bawah ini:

Pencegat Deskripsi
alias Ini memungkinkan parameter memiliki alias nama yang berbeda di seluruh permintaan pengguna
kotak centang Ini membantu dalam mengelola kotak centang dengan menambahkan nilai parameter salah untuk kotak centang yang belum dicentang
conversionError Ini menempatkan informasi kesalahan dari mengonversi String menjadi jenis parameter dalam kesalahan bidang tindakan
createSession Ini secara implisit membuat sesi HTTP jika tidak ada
debugging Ini menyediakan berbagai layar debugging untuk pengembang
execAndWait Ini mentransfer pengguna ke halaman tunggu perantara saat tindakan sedang dijalankan di latar belakang
pengecualian Ini memetakan pengecualian yang dilemparkan dari tindakan menuju hasil
fileUpload Ini memudahkan pengunggahan file di Struts 2
i18n Ini membantu dalam melacak lokal yang ditentukan selama sesi pengguna
log Ini memberikan pencatatan sederhana kepada pengguna dengan menghasilkan keluaran sebagai nama tindakan yang sedang dieksekusi
params Ini membantu dalam mengatur parameter permintaan pada tindakan
mempersiapkan Ini digunakan untuk melakukan pekerjaan pra-pemrosesan
Profil Hal ini memungkinkan informasi profil sederhana untuk tindakan pencatatan.
cakupan Ini menyimpan dan mengambil status tindakan selama sesi pengguna atau cakupan aplikasi
ServletConfig Ini memberikan izin tindakan untuk mengakses berbagai informasi berbasis servlet
timer Ini memberikan informasi profil sederhana
token Ini membantu dalam memeriksa tindakan untuk token yang valid untuk mencegah pengiriman formulir duplikat
validasi Ini memberikan dukungan validasi untuk berbagai tindakan

4. Nilai Tumpukan

ValueStackdi Struts2 adalah area penyimpanan tempat seluruh data aplikasi disimpan untuk memproses permintaan. Data ini disimpan di dalamActionContextobjek yang memanfaatkanThreadLocaluntuk mengambil nilai yang spesifik untuk setiap utas permintaan klien tertentu.

5. OGNL

OGNL adalah singkatan dari Object-Graph Navigation Language. Ini adalah bahasa ekspresi yang kuat seperti JSP dan sebagian besar digunakan untukreferensi dan manipulasi data yang ada di ValueStack. Selain itu, ini juga membantu dalam mentransfer dan mengubah jenis data.

Mirip dengan JSP, OGNL berisi objek root dalam konteks aplikasi. Dengan demikian, Anda dapat memberikan referensi objek default menggunakan notasi markup yang dalam hal ini dilambangkan dengan simbol pagar. Framework Struts 2 mengimplementasikan OGNL dengan membuat peta ActionContext. Di bawah ini saya telah membuat daftar komponen peta ActionContext:

  • Aplikasi
  • Sidang
  • Tumpukan nilai
  • Permintaan
  • Parameter
  • Atribut

Dengan ini, Anda telah mempelajari dasar-dasar Struts 2. Di bagian selanjutnya dari artikel Struts 2 ini, mari langsung beralih ke kode dan menerapkan semua yang telah Anda pelajari hingga sekarang.

melewati nilai lewat referensi java

Demo Tutorial Struts 2

Di sini saya akan membuat aplikasi sederhana di mana Anda perlu memasukkan nama Anda dan aplikasi akan menyambut Anda. Berikut tangkapan layar dari struktur proyek lengkapnya:

Seperti yang Anda lihat, dalam proyek ini kami akan membuat 5 file yaitu:

  1. HelloWorld.java
  2. index.jsp
  3. welcome.jsp
  4. web.xml
  5. struts.xml

Catatan: Sebelum Anda memulai proyek ini, pastikan Anda sudah menginstal Tomcat di sistem Anda.

LANGKAH I: Di Eclipse Anda, buka File> New> Dynamic Web Project. Masukkan Nama Proyek dan klik New Runtime.

LANGKAH II: Di sini Anda perlu memilih versi Apache Tomcat yang telah Anda unduh di sistem Anda dan klik Berikutnya.

LANGKAH III: Selanjutnya, klik Browse dan arahkan ke direktori tempat dependensi Tomcat telah disimpan. Setelah selesai klik Selesai dan lanjutkan dengan Pembuatan Proyek.

LANGKAH IV: Sekarang mari tambahkan file jar Struts yang akan diperlukan untuk keberhasilan pelaksanaan proyek ini. Anda dapat mengunduh JAR dari sini . Setelah Anda siap dengan file JAR, salin JAR dan tempelkan di bawah WebContent> WEB-INF> lib.

LANGKAH V: Sekarang kita sudah siap dengan semua konfigurasi, mari kita mengatur file kode, dimulai dengan HelloWorld.java. Untuk ini, klik kanan pada proyek> New> Class. Isi paket dan nama kelas dan klik selesai.

LANGKAH VI: Ketik kode di bawah ini di HelloWorld.java mengajukan.

paket com.edureka public class HelloWorld {private String name public String getName () {return name} public void setName (String name) {this.name = name} public String execution () {return 'success'}}

LANGKAH VII: Selanjutnya buat yang baru index.jsp file di bawah WebContent dan ketik kode di bawah ini:

 

LANGKAH VIII: Sekarang, buat lagi yang baru welcome.jsp file di bawah WebContent dan ketik kode di bawah ini:

Selamat datang:

LANGKAH IX: Sekarang pergi ke WebContent> WEB-INF dan ketik kode di bawah ini di web.xml mengajukan.

Struts2Demo index.html struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareandExecuteFilter struts2 / *

LANGKAH X: Terakhir, di bawah Java Resources> src, buat struts.xml mengajukan

welcome.jsp

LANGKAH XI: Sekarang pergi ke index.jsp halaman dan klik kanan padanya. Pilih Jalankan di Server untuk menjalankan aplikasi.

Ini membawa kita ke akhir artikel ini tentang Tutorial Struts 2. Jika Anda ingin tahu lebih banyak tentang Java, Anda dapat merujuk ke kami .

Sekarang Anda telah memahami apa itu Tutorial Struts 2, lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Kursus pelatihan dan sertifikasi Java J2EE dan SOA Edureka dirancang untuk siswa dan profesional yang ingin menjadi Pengembang Java. Kursus ini dirancang untuk memberi Anda permulaan dalam pemrograman Java dan melatih Anda untuk konsep Java inti dan lanjutan bersama dengan berbagai kerangka kerja Java seperti Hibernate & Spring.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar di artikel 'Tutorial Struts 2' ini dan kami akan menghubungi Anda kembali secepatnya.