Čtenáři jako vy pomáhají podporovat MUO. Když provedete nákup pomocí odkazů na našich stránkách, můžeme získat provizi přidružené společnosti. Přečtěte si více.

Spring je framework Java, který používá kontejner k vytváření a správě různých součástí aplikace. Kontejner (často nazývaný kontext aplikace Spring) propojuje různé komponenty v aplikaci pomocí návrhového vzoru vkládání závislostí (DI). DI vám umožňuje použít objekt v závislé třídě, aniž byste vytvořili jeho novou instanci v rámci závislé třídy.

Takže místo toho, aby umožnil každé komponentě vytvářet nové instance těch, na které spoléhají, kontejner Spring vytvoří a udržuje instanci každé z komponent, které hostuje. Tento kontejner pak vloží instanci komponenty do všech ostatních komponent, které ji potřebují.

Prozkoumání základních funkcí Spring

Framework Spring má přibližně 20 dobře uspořádaných modulů, které hrají nedílnou roli v jeho schopnosti vytvářet a spravovat aplikace. Na základě primárních funkcí těchto modulů je můžete seskupit do pěti kategorií:

instagram viewer
  • Core Container
  • Přístup k datům/integrace
  • Web
  • Aspektově orientované programování a instrumentace
  • Test

Jarní kontejner

Spring používá kontejner k vytváření a správě různých komponent (které nazývá beans) aplikace. Kontejner je přístupný přes rozhraní ApplicationContext Spring, které vám umožňuje vytvářet instance, konfigurovat a sestavovat objekty (nebo fazole). Springův kontejner může plnit svou funkci díky konfiguračním metadatům.

Tato konfigurační metadata mohou mít několik různých forem, ale jejich typickou formou je XML. Kromě fazolí se kontejner Spring skládá také z jádra, kontextu a modulu výrazu.

Spring Data Access/Integrace

Aspekt přístupu/integrace dat jarního rámce se skládá z několika submodulů: JDBC, ORM, OXM, JMS a transakce. Tyto moduly spolupracují při správě jakýchkoli dat, která vaše aplikace používá.

Jarní web

Webová funkce aplikace Spring poskytuje webově orientovanou integraci pro vaši aplikaci. Kromě webově orientované integrace poskytuje Spring modul webového servletu. Modul webového servletu je zodpovědný za Spring implementace model-view-controller (MVC)..

Spring Aspect-Oriented Programming (AOP)

AOP framework Spring je další z jeho klíčových součástí. Ačkoli rámec AOP není pro funkci kontejneru Spring zásadní, doplňuje kontejner tím, že je schopným řešením middlewaru. Jednou z klíčových funkcí rámce AOP je to, že poskytuje deklarativní podnikové služby pro vaši aplikaci, konkrétně správu deklaračních transakcí.

Deklarativní správa transakcí je žádoucí přístup k vývoji softwaru, protože má minimální dopad na aplikační kód.

Jarní test

Spring klade velký důraz na testování aplikací. Jeho testovací modul podporuje integrační testování a testování jednotek pomocí JUnit nebo TestNG.

Vytvoření jarní aplikace

Existuje několik způsobů, jak vytvořit základ pro novou aplikaci Spring. Mezi různé přístupy patří:

  • Z webové aplikace (nebo Spring Initializr) na oficiálních stránkách Spring.
  • Ruční vytvoření struktury adresáře projektu a specifikace sestavení.
  • S Spring Tool Suite.
  • Z příkazového řádku s rozhraním příkazového řádku Spring Boot.
  • S IDE Eclipse.
  • S IntelliJ IDEA IDE.

Nejoblíbenějším přístupem je Spring Initializr:

Jak můžete vidět z obrázku výše, budete muset učinit několik rozhodnutí. První je typ projektu, který chcete inicializovat. Spring nabízí tři možnosti: Gradle pro Groovy, Gradle pro Kotlin nebo Maven. Tato ukázková aplikace bude používat projekt Maven.

Další možnosti, které musíte vybrat, jsou jazyk (Java), verze Spring Boot, kterou chcete použít, a metadata projektu. Spring již má ve svých pěti polích nějaká fiktivní data, která vám pomohou vytvořit ukázkovou aplikaci. Tato pole však budete muset aktualizovat daty specifickými pro projekt, protože tato metadata budou popisovat vaši aplikaci Spring včetně jarních fazolí a jejich metod.

Dále budete muset vybrat obal, ve kterém chcete své soubory (jar nebo war). Poté si můžete vybrat verzi Javy, kterou máte na svém zařízení. Konečné rozhodnutí, které budete muset učinit, je typ závislostí, které chcete pro svou aplikaci.

Spring poskytuje několik závislostí, které můžete použít k přidání vlastností do vaší aplikace. Chcete-li do aplikace přidat novou závislost, jednoduše klikněte na tlačítko přidat závislosti napravo od Spring Initializr. Tato akce vygeneruje na obrazovce následující překrytí:

Pro tuto ukázkovou aplikaci budete potřebovat jedinou závislost Spring Web. Tato závislost vám umožňuje vytvářet webové aplikace pomocí architektury MVC. Poté, co vyberete všechny závislosti, které chcete ve své aplikaci použít, pokračujte kliknutím na generování. Tím se stáhne vzorník projektu.

Nyní máte projekt Spring Boot (což je jedna z knihoven Spring). Posledním krokem je import projektu do vámi preferovaného IDE. Váš jarní projekt bude mít následující strukturu projektu:

Toto je normální struktura projektu Maven a existuje několik důležitých souborů, se kterými se musíte seznámit.

  • Pom.xml: Obsahuje konfigurační data aplikace Spring.
  • OnlineShopaholicsApplication.java: Toto je hlavní třída Spring Boot, která spouští aplikaci.
  • OnlineShopaholicsApplicationTest.java: Toto je a JUnit test třída, která zajišťuje správné načtení kontextu (nebo kontejneru) aplikace Spring.

Spuštění jarní aplikace

Třída Spring’s bootstrap, kterou je v tomto případě třída OnlineShopaholicsApplication, má následující počáteční kód:

balík com.onlineshopaholics;

importorg.jarní kostra.bota.Jarní Aplikace;
importorg.jarní kostra.bota.automatická konfigurace.SpringBootApplication;

@SpringBootApplication
veřejnosttřídaAplikace OnlineShopaholics{
veřejnoststatickýprázdnotahlavní(Řetězec[] argumentů){
SpringApplication.run (OnlineShopaholicsApplication.třída, argumenty);
}
}

Jedním z nejdůležitějších aspektů výše uvedeného kódu je @SpringBootApplication anotace, což je složená anotace, která umožňuje vaší aplikaci přístup k funkcím tří dalších anotací:

  • @EnableAutoconfiguration: Tato anotace umožňuje automatickou konfiguraci Spring Boot. To znamená, že říká Spring boot, aby nakonfiguroval jakoukoli komponentu, o které si myslí, že bude vaše aplikace potřebovat.
  • @ComponentScan: Tato anotace vám umožňuje povolit skenování součástí. Tato funkce je důležitá, umožňuje Springu automaticky zjišťovat a registrovat další anotované komponenty pro použití v kontextu aplikace Spring (nebo kontejneru).
  • @SpringBootConfiguration: Toto je specializovaná forma anotace @Configureation, která vám umožňuje registrovat beany (nebo objekty) v kontextu aplikace Spring.

Dalším důležitým aspektem výše uvedeného kódu je hlavní() způsob, spustí vaši aplikaci. Když se aplikace nyní spustí, jednoduše spustí server. Pokud tedy chcete do aplikace přidat další funkce, budete muset aktualizovat kód:

balík com.onlineshopaholics;

importorg.jarní kostra.bota.Jarní Aplikace;
importorg.jarní kostra.bota.automatická konfigurace.SpringBootApplication;
importorg.jarní kostra.web.svázat.anotace.GetMapping;
importorg.jarní kostra.web.svázat.anotace.RequestParam;
importorg.jarní kostra.web.svázat.anotace.RestController;

@SpringBootApplication
@RestController
veřejnosttřídaAplikace OnlineShopaholics{
veřejnoststatickýprázdnotahlavní(Řetězec[] argumentů){
SpringApplication.run (OnlineShopaholicsApplication.třída, argumenty);
}

@GetMapping("/zákazník")
veřejnost Tětiva Vítejte (@RequestParam (hodnota = "název", defaultValue = "Zákazník") Tětiva název) {
vrátit seTětiva.formát("Vítejte %s!", název);
}
}

Aplikace Spring Boot má nyní tři nové anotace:

  • @RestController: Tato anotace označuje třídu jako řadič, takže každá metoda ve výše uvedené třídě (kromě main()) vrátí objekt domény místo pohledu.
  • @GetMapping: Tato anotace mapuje požadavky HTTP GET na konkrétní metody záhlaví. Takže pokaždé, když v prohlížeči vytvoříte požadavek na „/customer“, metoda Welcome() požadavek zpracuje tak, že vrátí hodnotu řetězce.
  • @RequestParam: Tato anotace označuje, že parametr metody by měl být svázán s parametrem webového požadavku.

S aktualizovaným kódem vaše jaro Aplikace OnlineShopaholics nyní má zákaznickou stránku, kterou si můžete prohlédnout ve svém prohlížeči. Spuštění aplikace spustí server a vytvoří výstup v konzole.

Ve výstupu je spousta důležitých informací. Řekne vám, že server běží, řekne vám, jak dlouho trval proces inicializace, a řekne vám, na jakém portu aplikace běží (8080, ve výchozím nastavení). Pokud tedy navigujete do http://localhost: 8080/zákazník ve vašem prohlížeči uvidíte následující výstup:

Nyní si můžete navrhnout zobrazení aplikace

Dalším důležitým souborem ve struktuře projektu, kterého si můžete všimnout, je šablony složku. V ideálním případě, Aplikace OnlineShopaholics třída by měla sloužit jako kontrolér, který zpracovává požadavky na různé pohledy. V úplné aplikaci by tedy třída řadiče neměla obsahovat text, který se zobrazí v pohledu na její požadavek.

Místo toho budete muset vytvořit soubory šablon pomocí HTML a umístit je do složky šablon vaší aplikace Spring.