Nejlepší odpověď
V současné době v zásobníku technologie Java je Spring MVC na vrcholu a je hojně využíván k vytváření aplikací Enterprise Java.
Spring MVC je velmi žádaná a aktualizovaná. Vydávají nové verze Jaro čas od času. Jarní zabezpečení je jedním z nejlepších způsobů ochrany aplikace. Struts je prastará. Ale stále existuje, protože většina starších aplikací byla vytvořena pomocí něj. Ale téměř žádný vývojář by si dnes nevybral Struts pro vytvoření aplikace.
Váš požadavek lze snadno splnit pomocí: -Spring MVC: pro REST api, model klientského serveru, Service Oriented Architecure (SOA). -Jarní zabezpečení: pro zabezpečení vaší aplikace. -Hibernace nebo jarní šablona JDBC. (jděte s Hibernate): pro zpracování databáze – MySQL pro databázi. -JUnit pro testování jednotek.
Odpověď
Jarní framework se skládá z několika modulů, z nichž jeden je MVC Model View Controller pod webovou doménou.
Zvažte následující pohled na jarní moduly z ptačí perspektivy.
MVC: Můžete vidět, že webový modul se označuje jako MVC./Remoting. Tento modul se skládá ze všech kódů desek kotlů požadovaných pro vývoj webových aplikací. To zahrnuje požadavky na zpracování, metody HTTP, mapování adres URL, překladače pohledů, knihovny značek JSP, relace. Viz 22. Webový rámec MVC pro další podrobnosti.
IOC – inverze kontroly: „Nevolajte nám, zavoláme vám“
Přichází složitá část. Jak vidíte, IOC není součástí výše uvedeného diagramu modulu. IOC je součástí modulu Spring Core spolu s mnoha dalšími věcmi.
IOC je nad Springem. Jedná se o objektově orientovaný návrhový princip, který snižuje závislost a zvyšuje modularitu a rozšiřuje program.
Jak říká Martin Fowler, inverze řízení je princip, při kterém je řídicí tok programu obrácen: místo toho, aby programátor řídil tok programu, externí zdroje (rámec, služby, další komponenty) jej převezmou.
IOC řeší následující problémy s designem.
- Oddělení provádění úkolu z implementace.
- Zaměření modulu na úkol, pro který je určen.
- Osvobození modulů od předpokladů o tom, jak ostatní systémy dělají to, co dělají, a místo toho se spoléhají na c ontracts.
- Aby se předešlo vedlejším účinkům při výměně modulu.
Přicházíme k jarnímu období IOC.
Jarní IOC je způsob implementace IOC na jaře. IOC lze dosáhnout několika způsoby. Dokumentace říká –
Je to proces, při kterém objekty definují své závislosti, tj. Ostatní objekty, se kterými pracují, pouze prostřednictvím argumentů konstruktoru, argumentů k tovární metodě nebo vlastností, které jsou nastaveny na instanci objektu poté, co je zkonstruován nebo vrácen z tovární metody. Kontejner poté vloží tyto závislosti, když vytvoří fazole. Tento proces je v zásadě inverzní, proto název Inverze řízení (IoC) samotného fazole, který řídí instanci nebo umístění svých závislostí pomocí přímé konstrukce třídy nebo mechanismus, jako je vzor Vyhledávač služeb .
Na jaře org.springframework.beans
a org.springframework.context
obsahuje implementaci IOC nazvanou Spring IOC Container. Rozhraní org.springframework.context.ApplicationContext
představuje kontejner Spring IoC a odpovídá za instanci, konfiguraci a sestavení objektů (na jaře jsou objekty fazole).
Přečíst 7. Kontejner IoC a BeanFactory (Spring Framework 4.3.7.RELEASE API) pro další podrobnosti.