Perbezaan Antara Struts dan Spring MVC

Struts vs Spring MVC

Rangka kerja Struts adalah salah satu rangka kerja aplikasi web awal untuk membangunkan aplikasi web Java EE. Spring adalah rangka kerja aplikasi sumber terbuka. Beberapa saat selepas diperkenalkannya rangka kerja Spring, para pemaju menambah rangka kerja MVC kepada rangka kerja Spring, dengan harapan dapat mengatasi beberapa batasan yang mereka anggap dalam Struts. Tetapi beberapa tahun kemudian, Struts2 (atau Struts versi 2) tiba, dan ia adalah rangka kerja aplikasi web yang sangat berbeza dan sangat baik. Kini, kedua-dua Struts dan Spring MVC digunakan sangat banyak untuk membangunkan aplikasi Java EE di dunia.

Apa itu Struts?

Struts (juga dikenali sebagai Apache Struts) adalah kerangka sumber terbuka rentetan platform yang ditulis di Jawa, yang bertujuan untuk membangunkan aplikasi web Java EE. Struts menggalakkan penggunaan seni bina MVC (Model-View-Controller). Ia adalah lanjutan API Java Servlet. Craig McClanahan adalah pencipta asal Struts. Pada mulanya ia dikenali sebagai Jakaratha Struts, dan dikendalikan di bawah Projek Perisian Apache Jakarta. Pembebasan stabil semasa adalah versi 2.2.3, yang dikeluarkan pada bulan Mei, 2011. Ia dikeluarkan di bawah Apache License 2.0. Rangka Struts dipanggil kerangka berasaskan permintaan, dan terdiri daripada tiga komponen utama: pengangkut permintaan, pengendali respons, dan perpustakaan tag. URI Standard (Uniform Resource Identifier) ​​dipetakan ke handler permintaan. Pengendali respons bertanggungjawab untuk memindahkan kawalan. Untuk membuat aplikasi interaktif dengan borang, ciri yang ditawarkan oleh perpustakaan tag boleh digunakan. Struts menyokong aplikasi REST dan pelbagai teknologi seperti SOAP, AJAX, dan lain-lain.

Apakah Spring MVC??

Spring adalah rangka kerja aplikasi sumber terbuka. Ia telah dibangunkan oleh Rod Johnson ,, dan versi pertama dikeluarkan pada tahun 2004. Spring 3.0.5 adalah versi terkini rangka kerja Spring. Ia dilesenkan di bawah lesen Apache 2.0. Apa-apa aplikasi Java boleh menggunakan ciri-ciri teras rangka Spring. Terdapat beberapa modul dalam rangka Spring, dan MVC adalah salah satu daripada mereka. Rangka kerja Spring MVC bukan sebahagian daripada rancangan asal mereka. Malah, sebab pemaju Spring datang dengan rangka MVC mereka sendiri adalah untuk memberikan penyelesaian kepada apa yang mereka tunjukkan sebagai kekurangan dalam Struts (versi 1) dan rangka kerja yang serupa. Khususnya, mereka berkata bahawa mereka mahu menangani kekurangan pemisahan antara lapisan persembahan, lapisan pengendalian permintaan, dan model. Spring MVC juga merupakan rangka kerja aplikasi web berasaskan permintaan.

Apakah perbezaan antara Struts dan Spring MVC??

Walaupun Spring MVC dan Struts adalah dua rangka kerja aplikasi web yang digunakan untuk membangunkan aplikasi web Java EE, mereka mempunyai perbezaannya. Malah, Spring MVC telah dibangunkan untuk menangani beberapa batasan dalam Struts (versi 1). Tetapi Struts2 adalah rangka kerja yang sangat baik daripada versi 1 (mereka tidak berkongsi pangkalan data yang sama), dan oleh itu, Spring MVC dan Structs2 sangat setanding.

Salah satu kelebihan utama Spring MVC ialah kemungkinan integrasi lancar dengan banyak pilihan pandangan seperti JSP / JSTL, Ubin, FreeMaker, Excel, PDF dan JSON. Tetapi, tidak seperti Struts, Spring MVC tidak menyediakan sokongan AJAX terbina dalam (perlu menggunakan perpustakaan AJAX pihak ketiga).

Pada akhirnya, kedua-duanya dianggap sebagai rangka kerja yang sangat matang, dan memilih antara kedua-duanya datang ke keutamaan peribadi. Adalah penting untuk diperhatikan di sini bahawa jika terdapat sebarang perasaan negatif terhadap struts, mereka hanya disebabkan oleh kekurangan yang terdapat di Struts versi 1 (yang kini dianggap usang).