Jaké jsou různé moduly jara?


Nejlepší odpověď

Většina odpovědí na internetu je velmi vágních, a proto může začátečníka zmást.

Široká průmyslová jarní verze je Spring 3.0, změny oproti předchozí verzi, tj. 2.5, se skládají z (podporováno JDK 5): –

Spring MVC Test Framework – Asynchronous MVC processing on Servlet 3.0 – custom @Bean definition annotations in @ Konfigurační třídy – @Autowired a @Value, které se mají použít jako metaanotace – Zpřesnění souběžnosti v rámci – Načítání WebApplicationContexts v rámci TestContext – JCache 0.5 (JSR-107)

Jaro 2.X se skládalo hlavně z 6 modulů, podporováno JDK 4: –

  • Spring Core Module
  • Spring Context [J2EE]
  • Spring DAO Module [Spring JDBC]
  • Jarní modul ORM
  • Jarní AOP [Aspect Oriented Programming]
  • Jarní WEB-MVC modul

Výše ​​se liší od předchozí verze Jaro 1.x se 7 moduly.

Odpověď

Nejprve zkontrolujte některá fakta:

  • K vytváření aplikací Java Enterprise se používá Spring Framework i Spring Boot.
  • Dalo by se to vše pomocí Spring Framework, čehož lze dosáhnout Spring Bootem.

Proč tedy Spring Boot ?

Abychom tomu porozuměli, je třeba pochopit filozofii designu, která stojí za vytvořením Spring Boot. Pokud rozumíte filozofii / cíli designu, pak byste automaticky věděli, jaký je mezi nimi rozdíl.

Uvedu několik vrcholů těchto designových cílů:

  1. Konvence nad konfigurací Je to paradigma softwarového designu používaná mnoha softwarovými rámci / systémy, které uživateli zjevně poskytuje rozumné výchozí hodnoty podle pokynů osvědčené postupy a bez ztráty flexibility. Dopad tohoto principu návrhu je hluboký a zahrnuje; dobrá architektura, udržovatelnost, jednotné a standardní vytváření produktů, menší počet rozhodnutí pro uživatele, zvýšení celkové produktivity, rychlejší vývoj atd., abych zmínil několik. Myšlenka je, že systém / rámec by poskytoval rozumné výchozí hodnoty pro jejich uživatele [podle konvence] a pokud se někdo odchýlí / odchýlí se od těchto výchozích hodnot, pak pouze jeden musí provést jakékoli změny konfigurace. Vezměme si několik příkladů : Příklad 1: (Nasazení Zjednodušené) Předpokládejme, že uživatel vytvoří webovou aplikaci po jarním MVC, pak je zřejmé, že k nasazení této aplikace bude uživatel potřebovat kontejner jako Tomcat. Pokud váš rámec může poskytnout integrovaný Tomcat, pak uživatelé nemusí ztrácet čas a úsilí instalací, konfigurací instance Tomcat. Pokud si toto výchozí chování nepřejete, pak by rámec měl mít také flexibilitu. Pracujte pro vás: Dávejte pozor na závislé sklenice spring-boot-starter-web artifactId org.springframework.boot spring-boot-starter-web Dejte mi vědět, co jste našli? 🙂 Příklad 2: (Závislost správy závislostí) Pokud jste vyvinuli svou podnikovou aplikaci pomocí Spring Framework (tradičním způsobem), pak určitě znáte bolest hlavy při hledání správné sklenice, správné verze sklenic, upgrade verze sklenic a mnoho dalších. Co když může uživatel získat všechny závislé sklenice spolu s jejich přechodnými závislostmi po vybalení z krabice pouhým poukazem na to, že potřebuje sklenice související s webem nebo zabezpečením nebo jpa atd. Work For You : Podívejte se na startovací balíčky Spring Boot jako spring-boot-starter-web, spring-boot-startér-aktuátor atd.
  2. Rychlý vývoj aplikací Jedna věta, maximalizace kódu, který skutečně přidává hodnotu nebo souvisí s vaší doménou, a omezení standardního kódu. Vezměte si příklad: kód ve vaší aplikaci, který zařazuje XML nebo JSON, nemá žádnou hodnotu pro zákazníka ani nemá výhodu pro vývojáře.

Nyní jsme diskutovali o filozofii designu, která stojí za vytvořením Spring Boot. Co to vlastně dělá? Jak to pomáhá?

  • Urychlení vývoje
  • Vývojáři investují svůj čas do vytváření řešení, na kterých skutečně záleží, a přidávají hodnoty, místo aby ztráceli hodinu [úsilí i čas] při nastavování vylepšit jejich vývojové prostředí, projekty, provádět změny konfigurace a psát standardní kódy

Doufám, že jsem schopen vysvětlit rozdíl mezi Spring frameworkem a Spring Bootem z hlediska designu.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *