Qhov txawv ntawm Struts thiab Struts2

Qhov txawv ntawm Struts thiab Struts2
Qhov txawv ntawm Struts thiab Struts2

Video: Qhov txawv ntawm Struts thiab Struts2

Video: Qhov txawv ntawm Struts thiab Struts2
Video: Kev Hlub Tsis Khaws Zoo Cia Official MV by Dang Thao 2024, Hlis ntuj nqeg
Anonim

Struts vs Struts2

Struts (tseem hu ua Apache Struts lossis Struts 1) yog qhov qhib qhov chaw qhib lub hauv paus hauv Java, uas yog tsim los tsim Java EE web applications. Nws yog ib qho ntawm thawj Java EE web application frameworks. Tab sis ob peb xyoos tom qab ntawd, Struts2 (lossis Struts version 2) tuaj txog, thiab nws yog qhov sib txawv kiag li thiab txhim kho lub vev xaib daim ntawv thov. Nws tau hais txog ob peb qhov teeb meem uas tau pom tias yog qhov tsis txaus hauv thawj version. Tam sim no, Struts2 tau siv hnyav heev los tsim Java EE daim ntawv thov hauv ntiaj teb.

Struts yog dab tsi?

Struts (Struts 1) lub moj khaum yog ib qho ntawm thawj lub vev xaib thov kev tsim kho Java EE web applications. Struts moj khaum txhawb kev siv MVC (Model-View-Controller) architecture. Nws yog qhov txuas ntxiv ntawm Java Servlet API. Craig McClanahan yog tus tsim thawj ntawm Struts. Thaum xub thawj nws tau hu ua Jakaratha Struts thiab tau tswj hwm hauv Jakarta Project ntawm Apache Software Foundation. Nws tau tso tawm raws li Apache Daim Ntawv Tso Cai 2.0. Struts lub moj khaum yog hu ua lub moj khaum raws li kev thov, thiab nws yog tsim los ntawm peb lub ntsiab lus: tus neeg thov kev thov, tus neeg teb xov tooj thiab lub tsev qiv ntawv tag. Standard URI (Uniform Resource Identifier) yog mapped rau tus neeg thov kev thov. Teb handler yog lub luag hauj lwm rau kev hloov kev tswj. Txhawm rau tsim cov ntawv thov sib tham nrog cov ntawv, cov yam ntxwv muab los ntawm lub tsev qiv ntawv lossis tuaj yeem siv. Struts txhawb cov ntawv thov REST thiab ntau yam thev naus laus zis xws li SOAP, AJAX, thiab lwm yam.

Struts2 yog dab tsi?

Struts lub moj khaum tau pom tias muaj qee qhov kev txwv (tsuas yog qhov tsis muaj kev sib cais ntawm cov txheej txheem nthuav qhia, thov tuav txheej thiab tus qauv) los ntawm Java EE cov neeg tsim tawm thaum lub sijhawm ntawd, thiab yog li ob peb xyoos tom qab Struts2 tuaj txog. Qhov tseeb, Struts2 txawv kiag li ntawm Struts. Qhov tseeb, lawv tseem tsis tau qhia tib cov cai hauv paus vim Struts2 tsuas yog qhov tshwm sim ntawm kev hloov npe WebWork 2.2 lub moj khaum (piv txwv li WebWork thiab Struts cov zej zog uas ua haujlwm sib cais rau qee lub sijhawm thaum kawg koom tes nrog Struts2). Nws qhov kev tso tawm ruaj khov tam sim no yog version 2.2.3, uas tau tso tawm thaum lub Tsib Hlis, 2011.

Qhov txawv ntawm Struts thiab Struts2 yog dab tsi?

Ib qho ntawm ntau qhov teeb meem ntawm Struts lub moj khaum yog qhov xav tau rau kev ua haujlwm rau cov chav kawm paub daws teeb meem es tsis txhob cuam tshuam. Qhov no tau daws los ntawm Struts2 lub moj khaum. Piv txwv li, Struts lub moj khaum xav tau cov chav kawm Action kom txuas ntxiv los ntawm cov chav kawm paub daws teeb meem, tab sis Struts2 Kev Ua Haujlwm tuaj yeem siv qhov Kev Ua Haujlwm interface. Vim qhov sib txawv ntawm cov qauv threading ntawm ob versions xov-kev nyab xeeb teeb meem uas tuaj nyob rau hauv Struts moj khaum hais txog Action khoom tsis tshwm sim nyob rau hauv Struts2 moj khaum. Yog vim li cas Struts2 Action khoom yog instantiated rau txhua qhov kev thov, thaum Action nyob rau hauv Struts moj khaum tsuas muaj ib qho piv txwv los lis tag nrho cov kev thov rau qhov Action. Tsis zoo li Txoj Haujlwm hauv Struts lub moj khaum, Struts2 Kev Ua tsis yog nyob ntawm Servlet API.

Testability ntawm Struts2 lub moj khaum yog qhov sib piv siab dua li Struts moj khaum. Koj tuaj yeem sim Struts2 Kev Ua Haujlwm tsuas yog ua raws li peb kauj ruam: instantiation, teeb tsa cov khoom thiab kev thov ntawm txoj kev. Kev sau cov tswv yim yooj yim dua hauv Struts2 lub moj khaum raws li Cov Khoom Siv Ua Haujlwm tau siv los ua cov khoom nkag, tsis tas yuav khaws cov khoom siv thib ob. Sib nrug los ntawm kev txhawb nqa rau JSTL kev koom ua ke (uas yog tam sim no nyob rau hauv Struts), Struts2 lub moj khaum tuaj yeem siv ntau zog thiab nthuav tawm OGNL (Object Graph Notation Language). Rau hom kev hloov pauv, Strut thiab Strut2 siv Commons-Beanutils thiab OGNL, feem. Vim tias cov kev txhim kho no, Struts2 lub moj khaum yog suav tias yog lub hauv paus loj hlob thiab nws yog qhov nrov heev ntawm Java EE programmers. Ntawm qhov tod tes, Struts lub moj khaum tam sim no suav tias tsis siv lawm.

Pom zoo: