Starpība Starp Statņiem Un Statņiem2

Starpība Starp Statņiem Un Statņiem2
Starpība Starp Statņiem Un Statņiem2

Video: Starpība Starp Statņiem Un Statņiem2

Video: Starpība Starp Statņiem Un Statņiem2
Video: the best material for home construction 1 2024, Aprīlis
Anonim

Struts vs Struts2

Struts (pazīstams arī kā Apache Struts vai Struts 1) ir starpplatformu Java atvērtā koda ietvars, kas paredzēts Java EE tīmekļa lietojumprogrammu izstrādei. Tas bija viens no sākotnējiem Java EE tīmekļa lietojumprogrammu ietvariem. Bet dažus gadus vēlāk ieradās Struts2 (vai Struts versija 2), un tas bija pilnīgi atšķirīgs un ļoti uzlabots tīmekļa lietojumprogrammu ietvars. Tā bija pievērsusies dažiem jautājumiem, kas sākotnējā versijā tika uztverti kā trūkumi. Tagad Struts2 tiek ļoti izmantots Java EE lietojumprogrammu izstrādei pasaulē.

Kas ir Struts?

Struts (Struts 1) ietvars bija viens no sākotnējiem tīmekļa lietojumprogrammu ietvariem Java EE tīmekļa lietojumprogrammu izstrādei. Struts ietvars mudina izmantot MVC (Model-View-Controller) arhitektūru. Tas ir Java Servlet API paplašinājums. Kreigs Makklanahans ir sākotnējais Struts veidotājs. Sākotnēji tas bija pazīstams kā Jakaratha Struts un tika uzturēts Apache Software Foundation Džakartas projektā. Tas tiek izlaists ar Apache License 2.0. Struts sistēmu sauc par pieprasījumu balstītu sistēmu, un to veido trīs galvenie komponenti: pieprasījumu apstrādātājs, atbilžu apstrādātājs un tagu bibliotēka. Standarta URI (vienotais resursu identifikators) tiek piesaistīts pieprasījumu apstrādātājam. Atbildes apstrādātājs ir atbildīgs par vadības nodošanu. Lai izveidotu interaktīvas lietojumprogrammas ar veidlapām, var izmantot tagu bibliotēkas piedāvātās funkcijas. Struts atbalsta REST lietojumprogrammas un dažādas tehnoloģijas, piemēram, SOAP, AJAX utt.

Kas ir Struts2?

Tika uzskatīts, ka Java EE izstrādātāji tajā laikā saturēja noteiktus ierobežojumus (galvenokārt atdalīšanas trūkumu starp prezentācijas slāni, pieprasījumu apstrādes slāni un modeli), un tāpēc dažus gadus vēlāk ieradās Struts2. Patiesībā Struts2 bija pilnīgi atšķirīgs no Struts. Patiesībā viņiem pat nebija tāda pati koda bāze, jo Struts2 bija vienkārši WebWork 2.2 ietvara pārdēvēšanas rezultāts (ti, WebWork un Struts kopienas, kas kādu laiku strādāja atsevišķi, galu galā sadevās rokās, lai izdomātu Struts2). Tā pašreizējā stabilā versija ir versija 2.2.3, kas tika izlaista 2011. gada maijā.

Kāda ir atšķirība starp statņiem un statņiem2?

Viena no daudzajām Struts ietvara problēmām bija nepieciešamība programmēt, lai saskarnes vietā abstraktētu klases. Tas tika atrisināts ar Struts2 ietvaru. Piemēram, Struts Framework prasīja, lai darbības klases tiktu paplašinātas no abstraktām bāzes klasēm, bet Struts2 darbības var ieviest darbības saskarni. Sakarā ar vītņu modeļa atšķirībām starp abām versijām pavedienu drošības jautājumi, kas Struts sistēmā parādījās attiecībā uz darbības objektiem, Struts2 sistēmā nenotiek. Iemesls ir tas, ka katram pieprasījumam tiek izveidoti Struts2 darbības objekti, savukārt sistēmā Struts Framework ir tikai viens gadījums, kas apstrādā visus šīs darbības pieprasījumus. Atšķirībā no rāmja Actions in Struts, Struts2 Actions nav atkarīgas no Serversīklietotnes API.

Struts2 ietvara pārbaudāmība ir salīdzinoši augstāka nekā Struts Framework. Struts2 darbības varat pārbaudīt, vienkārši izpildot trīs darbības: eksekventēšana, rekvizītu iestatīšana un metožu izsaukšana. Struts2 ietvaros ievade ir vieglāk ievākta, jo darbības īpašības tiek izmantotas kā ievades īpašības, bez otra ievades objekta paturēšanas. Papildus JSTL integrācijas atbalstam (kas atrodas Struts), Struts2 ietvars var izmantot jaudīgāku un izteiksmīgāku OGNL (Object Graph Notation Language). Tipa pārveidošanai Strut un Strut2 izmanto attiecīgi Commons-Beanutils un OGNL. Šo uzlabojumu dēļ Struts2 ietvars tiek uzskatīts par ļoti nobriedušu sistēmu, un tas ir ļoti populārs Java EE programmētāju vidū. No otras puses, Struts ietvars tagad tiek uzskatīts par novecojušu.

Ieteicams: