Úvod do jarného rámca

Úvod do jarného rámca
Čitatelia ako vy pomáhajú podporovať MUO. Keď uskutočníte nákup pomocou odkazov na našej stránke, môžeme získať pridruženú províziu. Čítaj viac.

Spring je framework Java, ktorý používa kontajner na vytváranie a správu rôznych komponentov aplikácie. Kontajner (často nazývaný kontext aplikácie Spring) spája rôzne komponenty v aplikácii pomocou návrhového vzoru vkladania závislostí (DI). DI vám umožňuje použiť objekt v závislej triede bez toho, aby ste vytvorili jeho novú inštanciu v rámci závislej triedy.





VYUŽITIE VIDEA DŇA

Takže namiesto toho, aby umožnil každému komponentu vytvárať nové inštancie tých, na ktoré sa spoliehajú, kontajner Spring vytvorí a udržiava inštanciu každého komponentu, ktorý je hostiteľom. Tento kontajner potom vloží inštanciu komponentu do všetkých ostatných komponentov, ktoré to potrebujú.





Skúmanie základných funkcií Spring

Rámec Spring má približne 20 dobre organizovaných modulov, ktoré zohrávajú integrálnu úlohu v jeho schopnosti vytvárať a spravovať aplikácie. Na základe primárnych funkcií týchto modulov ich môžete zoskupiť do piatich kategórií:





  • Jadrový kontajner
  • Prístup/Integrácia údajov
  • Web
  • Aspektovo orientované programovanie a prístrojové vybavenie
  • Test

Jarná nádoba

Spring používa kontajner na vytváranie a správu rôznych komponentov (ktoré nazýva fazuľa) aplikácie. Kontajner je prístupný cez rozhranie ApplicationContext aplikácie Spring, ktoré vám umožňuje vytvárať inštancie, konfigurovať a zostavovať objekty (alebo fazule). Kontajner Spring môže vykonávať svoju funkciu pomocou konfiguračných metadát.

Tieto konfiguračné metaúdaje môžu mať niekoľko rôznych foriem, ale ich typickou formou je XML. Okrem fazule sa kontajner Spring skladá aj z jadra, kontextu a modulu výrazu.



Spring Data Access/Integrácia

Aspekt prístupu/integrácie údajov jarného rámca pozostáva z niekoľkých podmodulov: JDBC, ORM, OXM, JMS a transakcie. Tieto moduly spolupracujú pri správe akýchkoľvek údajov, ktoré vaša aplikácia používa.

Jarný web

Webová funkcia aplikácie Spring poskytuje webovo orientovanú integráciu pre vašu aplikáciu. Okrem webovo orientovanej integrácie ponúka Spring modul webového servletu. Modul webového servletu je zodpovedný za Spring's implementácia model-view-controller (MVC). .





Spring Aspect-Oriented Programming (AOP)

Spring's AOP framework je ďalšou z jeho kľúčových komponentov. Aj keď rámec AOP nie je rozhodujúci pre funkciu kontajnera Spring, dopĺňa kontajner tým, že je schopným riešením middleware. Jednou z kľúčových funkcií rámca AOP je, že poskytuje deklaratívne podnikové služby pre vašu aplikáciu, konkrétne riadenie transakcií deklarácií.

Deklaratívna správa transakcií je žiaducim prístupom k vývoju softvéru, pretože má minimálny vplyv na aplikačný kód.





ako aktualizovať služby Google Play

Jarný test

Spring kladie veľký dôraz na testovanie aplikácií. Jeho testovací modul podporuje integračné testovanie a testovanie jednotiek pomocou JUnit alebo TestNG.

Vytvorenie jarnej aplikácie

Existuje niekoľko spôsobov, ako vytvoriť základ pre novú aplikáciu Spring. Rôzne prístupy zahŕňajú:

  • Z webovej aplikácie (alebo Spring Initializr) na oficiálnej webovej stránke Spring.
  • Manuálne vytváranie projektovej adresárovej štruktúry a špecifikácií zostavenia.
  • S balíkom nástrojov Spring Tool Suite.
  • Z príkazového riadka s rozhraním príkazového riadka Spring Boot.
  • S IDE Eclipse.
  • S IntelliJ IDEA IDE.

Najpopulárnejším prístupom je Spring Initializr:

  Spring Initializr

Ako vidíte na obrázku vyššie, budete musieť urobiť niekoľko rozhodnutí. Prvým je typ projektu, ktorý chcete inicializovať. Spring ponúka tri možnosti: Gradle pre Groovy, Gradle pre Kotlin alebo Maven. Táto vzorová aplikácia bude používať projekt Maven.

Ďalšie možnosti, ktoré musíte vybrať, sú jazyk (Java), verzia Spring Boot, ktorú chcete použiť, a metadáta projektu. Spring už má vo svojich piatich poliach nejaké fiktívne údaje, ktoré vám pomôžu vytvoriť vzorovú aplikáciu. Tieto polia však budete musieť aktualizovať údajmi špecifickými pre projekt, pretože tieto metadáta budú popisovať vašu aplikáciu Spring vrátane jarných fazúľ a ich metód.

  Metadáta jarného inicializátora

Ďalej budete musieť vybrať obal, v ktorom chcete svoje súbory (jar alebo war). Potom si môžete vybrať verziu Java, ktorú máte na svojom zariadení. Konečné rozhodnutie, ktoré musíte urobiť, je typ závislostí, ktoré chcete pre svoju aplikáciu.

Spring poskytuje niekoľko závislostí, ktoré môžete použiť na pridanie vlastností do vašej aplikácie. Ak chcete do aplikácie pridať novú závislosť, jednoducho kliknite na tlačidlo Pridať závislosti napravo od Spring Initializr. Táto akcia vygeneruje na obrazovke nasledujúce prekrytie:

  Prekrytie Spring Initializr

Pre túto vzorovú aplikáciu budete potrebovať iba závislosť Spring Web. Táto závislosť vám umožňuje vytvárať webové aplikácie pomocou architektúry MVC. Po výbere všetkých závislostí, ktoré chcete použiť vo svojej aplikácii, pokračujte kliknutím na generovanie. Týmto sa stiahne vzorový štítok projektu.

Teraz máte projekt Spring Boot (ktorý je jednou z knižníc Spring). Posledným krokom je import projektu do vášho preferovaného IDE. Váš jarný projekt bude mať nasledujúcu štruktúru projektu:

  Štruktúra projektu Spring Boot

Toto je normálna štruktúra projektu Maven a existuje niekoľko dôležitých súborov, s ktorými sa musíte zoznámiť.

  • Pom.xml: Obsahuje konfiguračné údaje aplikácie Spring.
  • OnlineShopaholicsApplication.java: Toto je hlavná trieda Spring Boot, ktorá spúšťa aplikáciu.
  • OnlineShopaholicsApplicationTest.java: Toto je a JUnit test trieda, ktorá zaisťuje správne načítanie kontextu (alebo kontajnera) aplikácie Spring.

Spustenie jarnej aplikácie

Trieda Spring’s bootstrap, ktorou je v tomto prípade trieda OnlineShopaholicsApplication, má nasledujúci počiatočný kód:

 package com.onlineshopaholics; 

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class OnlineShopaholicsApplication {
    public static void main(String[] args) {
        SpringApplication.run(OnlineShopaholicsApplication.class, args);
    }
}

Jedným z najdôležitejších aspektov vyššie uvedeného kódu je @SpringBootApplication anotácia, čo je zložená anotácia, ktorá umožňuje vašej aplikácii prístup k funkciám troch ďalších anotácií:

  • @EnableAutoconfiguration: Táto anotácia umožňuje automatickú konfiguráciu Spring Boot. To znamená, že povie Spring boot, aby nakonfiguroval akýkoľvek komponent, o ktorom si myslí, že vaša aplikácia bude musieť fungovať.
  • @ComponentScan: Táto anotácia vám umožňuje povoliť skenovanie komponentov. Táto funkcia je dôležitá, umožňuje aplikácii Spring automaticky objaviť a zaregistrovať ďalšie anotované komponenty na použitie kontextom aplikácie Spring (alebo kontajnerom).
  • @SpringBootConfiguration: Toto je špecializovaná forma anotácie @Configureation, ktorá vám umožňuje zaregistrovať fazule (alebo objekty) v kontexte aplikácie Spring.

Ďalším dôležitým aspektom vyššie uvedeného kódu je hlavné() spôsob, spustí vašu aplikáciu. Keď sa aplikácia teraz spustí, jednoducho spustí server. Ak teda chcete do aplikácie pridať ďalšie funkcie, budete musieť aktualizovať kód:

 package com.onlineshopaholics; 

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class OnlineShopaholicsApplication {
    public static void main(String[] args) {
        SpringApplication.run(OnlineShopaholicsApplication.class, args);
    }

    @GetMapping("/customer")
    public String Welcome(@RequestParam(value = "name", defaultValue = "Customer") String name) {
        return String.format("Welcome %s!", name);
    }
}

Aplikácia Spring Boot má teraz tri nové anotácie:

  • @RestController: Táto anotácia označuje triedu ako radič, takže každá metóda v triede vyššie (okrem main()) vráti objekt domény namiesto zobrazenia.
  • @GetMapping: Táto anotácia mapuje požiadavky HTTP GET na konkrétne metódy hlavičky. Takže zakaždým, keď v prehliadači vytvoríte požiadavku na „/customer“, metóda Welcome() spracuje požiadavku tak, že vráti hodnotu reťazca.
  • @RequestParam: Táto anotácia označuje, že parameter metódy by mal byť viazaný na parameter webovej požiadavky.

S aktualizovaným kódom vaša jar Aplikácia OnlineShopaholics teraz má zákaznícku stránku, ktorú si môžete zobraziť vo svojom prehliadači. Spustenie aplikácie spustí server a vytvorí výstup v konzole.

Vo výstupe je veľa dôležitých informácií. Povie vám, že server beží, povie vám, ako dlho trval proces inicializácie, a povie vám, na akom porte aplikácia beží (štandardne 8080). Preto, ak navigujete do http://localhost:8080/customer vo vašom prehliadači uvidíte nasledujúci výstup:

ako aktualizujem svoj obchod Google Play
  Výstup prehliadača jarnej aplikácie

Teraz si môžete navrhnúť zobrazenie aplikácie

Ďalším dôležitým súborom v štruktúre projektu, ktorý si môžete všimnúť, je šablóny priečinok. V ideálnom prípade, Aplikácia OnlineShopaholics trieda by mala slúžiť ako kontrolór, ktorý vybavuje požiadavky na rôzne pohľady. V kompletnej aplikácii by preto trieda radiča nemala obsahovať text, ktorý sa zobrazí v zobrazení jej požiadavky.

Namiesto toho budete musieť vytvoriť súbory šablón pomocou HTML a umiestniť ich do priečinka šablón vašej aplikácie Spring.