სხვაობა Struts-სა და Spring MVC-ს შორის

სხვაობა Struts-სა და Spring MVC-ს შორის
სხვაობა Struts-სა და Spring MVC-ს შორის

ვიდეო: სხვაობა Struts-სა და Spring MVC-ს შორის

ვიდეო: სხვაობა Struts-სა და Spring MVC-ს შორის
ვიდეო: What is ubuntu and Linux | Difference between ubuntu and linux - Ubuntu Universe 2024, ნოემბერი
Anonim

Struts vs Spring MVC

Struts Framework არის ერთ-ერთი საწყისი ვებ აპლიკაციის ჩარჩო Java EE ვებ აპლიკაციების შესაქმნელად. Spring არის ღია კოდის აპლიკაციის ჩარჩო. Spring Framework-ის შემოღებიდან გარკვეული პერიოდის შემდეგ, დეველოპერებმა დაამატეს MVC ჩარჩო Spring Framework-ს, იმ იმედით, რომ გადაჭრიან ზოგიერთ შეზღუდვას, რომელიც მათ Struts-ში აღიქვამდნენ. მაგრამ რამდენიმე წლის შემდეგ ჩამოვიდა Struts2 (ან Struts ვერსია 2) და ეს იყო სრულიად განსხვავებული და უაღრესად გაუმჯობესებული ვებ აპლიკაციის ჩარჩო. ახლა, როგორც Struts, ასევე Spring MVC ძალიან აქტიურად გამოიყენება მსოფლიოში Java EE აპლიკაციების შესაქმნელად.

რა არის Struts?

Struts (ასევე ცნობილი როგორც Apache Struts) არის ჯვაში დაწერილი ღია წყაროს პლატფორმა, რომელიც განკუთვნილია Java EE ვებ აპლიკაციების შესაქმნელად. Struts ხელს უწყობს MVC (Model-View-Controller) არქიტექტურის გამოყენებას. ეს არის Java Servlet API-ის გაფართოება. კრეიგ მაკკლანაჰანი არის Struts-ის ორიგინალური შემქმნელი. თავდაპირველად იგი ცნობილი იყო როგორც Jakaratha Struts და ინახებოდა Apache Software Foundation-ის ჯაკარტას პროექტის ფარგლებში. მისი ამჟამინდელი სტაბილური გამოშვებაა ვერსია 2.2.3, რომელიც გამოვიდა 2011 წლის მაისში. ის გამოვიდა Apache ლიცენზიით 2.0. Struts Framework ეწოდება მოთხოვნაზე დაფუძნებულ ჩარჩოს და შედგება სამი ძირითადი კომპონენტისგან: მოთხოვნის დამმუშავებელი, პასუხის დამმუშავებელი და ტეგების ბიბლიოთეკა. სტანდარტული URI (რესურსების ერთიანი იდენტიფიკატორი) ასახულია მოთხოვნის დამმუშავებელთან. პასუხის დამმუშავებელი პასუხისმგებელია კონტროლის გადაცემაზე. ფორმებით ინტერაქტიული აპლიკაციების შესაქმნელად, შეიძლება გამოყენებულ იქნას ტეგების ბიბლიოთეკის მიერ შემოთავაზებული ფუნქციები. Struts მხარს უჭერს REST აპლიკაციებს და სხვადასხვა ტექნოლოგიებს, როგორიცაა SOAP, AJAX და ა.შ.

რა არის Spring MVC?

Spring არის ღია კოდის აპლიკაციის ჩარჩო. იგი შეიმუშავა როდ ჯონსონმა, და პირველი ვერსია გამოვიდა 2004 წელს. Spring 3.0.5 არის Spring Framework-ის მიმდინარე ვერსია. ის ლიცენზირებულია Apache 2.0 ლიცენზიით. ნებისმიერ Java აპლიკაციას შეუძლია გამოიყენოს Spring Framework-ის ძირითადი ფუნქციები. Spring Framework-ში რამდენიმე მოდულია და MVC ერთ-ერთი მათგანია. Spring MVC ჩარჩო არ იყო მათი თავდაპირველი გეგმის ნაწილი. ფაქტობრივად, მიზეზი იმისა, რომ Spring დეველოპერებმა გამოიგონეს საკუთარი MVC ჩარჩო იყო გადაწყვეტილებების მიწოდება, რაც მათ აჩვენეს, როგორც ხარვეზები Struts-ში (ვერსია 1) და სხვა მსგავსი ჩარჩოებში. კერძოდ, მათ თქვეს, რომ მათ სურდათ გადაეჭრათ პრეზენტაციის ფენას, მოთხოვნის დამუშავების ფენას და მოდელს შორის გამიჯვნის ნაკლებობა. Spring MVC ასევე არის მოთხოვნაზე დაფუძნებული ვებ აპლიკაციის ჩარჩო.

რა განსხვავებაა Struts-სა და Spring MVC-ს შორის?

მიუხედავად იმისა, რომ Spring MVC და Struts არის ორი პოპულარული ვებ აპლიკაციის ჩარჩო, რომელიც გამოიყენება Java EE ვებ აპლიკაციების შესაქმნელად, მათ აქვთ განსხვავებები.ფაქტობრივად, Spring MVC შეიქმნა იმისათვის, რომ გადაჭრას რამდენიმე შეზღუდვა Struts-ში (ვერსია 1). მაგრამ Struts2 არის უაღრესად გაუმჯობესებული ჩარჩო, ვიდრე ვერსია 1 (ისინი არც კი იზიარებენ იგივე კოდის ბაზას) და, შესაბამისად, Spring MVC და Structs2 ძალიან შედარებადია.

Spring MVC-ის ერთ-ერთი მთავარი უპირატესობა არის ის, რომ შესაძლებელია გქონდეთ უწყვეტი ინტეგრაცია ხედვის მრავალ ვარიანტთან, როგორიცაა JSP/JSTL, Tiles, FreeMaker, Excel, PDF და JSON. მაგრამ, Struts-ისგან განსხვავებით, Spring MVC არ უზრუნველყოფს ჩაშენებულ AJAX მხარდაჭერას (საჭიროა მესამე მხარის AJAX ბიბლიოთეკის გამოყენება).

საბოლოოდ, ორივე მათგანი განიხილება უაღრესად მომწიფებულ ჩარჩოებად და ამ ორს შორის არჩევანი დამოკიდებულია პირად პრეფერენციებზე. აქ მნიშვნელოვანია აღინიშნოს, რომ თუ რაიმე ნეგატიური გრძნობები არსებობს სტრატების მიმართ, ისინი გამოწვეულია მხოლოდ იმ ხარვეზებით, რომლებიც აღმოჩენილია Struts 1 ვერსიაში (რომელიც ახლა მოძველებულად ითვლება).

გირჩევთ: