Tādi lasītāji kā jūs palīdz atbalstīt MUO. Veicot pirkumu, izmantojot saites mūsu vietnē, mēs varam nopelnīt filiāles komisiju. Lasīt vairāk.

Spring ir Java ietvars, kas izmanto konteineru, lai izveidotu un pārvaldītu dažādus lietojumprogrammas komponentus. Konteiners (bieži saukts par pavasara lietojumprogrammas kontekstu) savieno dažādus lietojumprogrammas komponentus, izmantojot atkarības injekcijas (DI) dizaina modeli. DI ļauj izmantot objektu atkarīgā klasē, neveidojot jaunu tā gadījumu atkarīgajā klasē.

Tāpēc tā vietā, lai ļautu katram komponentam izveidot jaunus gadījumus no tiem, uz kuriem tas paļaujas, Spring konteiners izveido un uztur katra tā mitinātā komponenta gadījumu. Šis konteiners pēc tam ievada komponenta gadījumu visos pārējos komponentos, kuriem tas ir nepieciešams.

Pavasara galveno funkciju izpēte

Pavasara ietvarstruktūrā ir aptuveni 20 labi sakārtoti moduļi, kuriem ir būtiska nozīme lietojumprogrammu veidošanā un pārvaldībā. Pamatojoties uz šo moduļu galvenajām funkcijām, varat tos grupēt piecās kategorijās:

instagram viewer
  • Pamatkonteiners
  • Datu piekļuve/integrācija
  • Web
  • Aspektu orientēta programmēšana un instrumentācija
  • Pārbaude

Pavasara konteiners

Spring izmanto konteineru, lai izveidotu un pārvaldītu dažādus lietojumprogrammas komponentus (ko tas sauc par pupiņām). Konteiners ir pieejams, izmantojot Spring’s ApplicationContext saskarni, kas ļauj izveidot, konfigurēt un montēt objektus (vai pupiņas). Spring konteiners var pildīt savu funkciju, pateicoties konfigurācijas metadatiem.

Šiem konfigurācijas metadatiem var būt vairākas dažādas formas, taču to tipiskā forma ir XML. Papildus pupiņām Spring konteiners sastāv arī no kodola, konteksta un izteiksmes moduļa.

Pavasara datu piekļuve/integrācija

Pavasara ietvara datu piekļuves/integrācijas aspekts sastāv no vairākiem apakšmoduļiem: JDBC, ORM, OXM, JMS un transakcija. Šie moduļi darbojas kopā, lai pārvaldītu visus datus, ko izmanto jūsu lietojumprogramma.

Pavasara tīmeklis

Lietojumprogrammas Spring tīmekļa funkcija nodrošina uz tīmekli orientētu jūsu lietojumprogrammas integrāciju. Papildus uz tīmekli orientētai integrācijai Spring nodrošina tīmekļa servleta moduli. Tīmekļa servleta modulis ir atbildīgs par Spring's model-view-controller (MVC) ieviešana.

Pavasara aspektu orientētā programmēšana (AOP)

Pavasara AOP sistēma ir vēl viena no tās galvenajām sastāvdaļām. Lai gan AOP sistēmai nav izšķirošas nozīmes Spring konteinera funkcijai, tā papildina konteineru, jo ir spējīgs starpprogrammatūras risinājums. Viena no AOP ietvara galvenajām iezīmēm ir tā, ka tā nodrošina deklaratīvus uzņēmuma pakalpojumus jūsu lietojumprogrammai, proti, deklarācijas darījumu pārvaldību.

Deklaratīva darījumu pārvaldība ir vēlama pieeja programmatūras izstrādei, jo tai ir minimāla ietekme uz lietojumprogrammas kodu.

Pavasara tests

Pavasaris lielu nozīmi piešķir lietojuma testēšanai. Tā testa modulis atbalsta integrācijas testēšanu un vienību testēšanu, izmantojot JUnit vai TestNG.

Pavasara pieteikuma izveide

Ir vairāki veidi, kā izveidot pamatplāksni jaunai pavasara lietojumprogrammai. Dažādās pieejas ietver:

  • No tīmekļa lietojumprogrammas (vai Spring Initializr) Spring oficiālajā vietnē.
  • Manuāli izveidojiet projekta direktoriju struktūru un būvēšanas specifikācijas.
  • Ar Spring Tool Suite.
  • No komandrindas ar Spring Boot komandrindas interfeisu.
  • Ar Eclipse IDE.
  • Ar IntelliJ IDEA IDE.

Populārākā pieeja ir pavasara inicializācija:

Kā redzams attēlā, jums būs jāpieņem vairāki lēmumi. Pirmais ir projekta veids, kuru vēlaties inicializēt. Pavasaris piedāvā trīs iespējas: Gradle for Groovy, Gradle for Kotlin vai Maven. Šajā lietojumprogrammas paraugā tiks izmantots Maven projekts.

Citas opcijas, kas jums jāatlasa, ir valoda (Java), Spring Boot versija, kuru vēlaties izmantot, un projekta metadati. Pavasara piecos laukos jau ir daži fiktīvi dati, kas palīdzēs jums izveidot lietojumprogrammas paraugu. Tomēr šie lauki būs jāatjaunina ar konkrēta projekta datiem, jo ​​šie metadati aprakstīs jūsu pavasara lietojumprogrammu, tostarp pavasara pupiņas un to metodes.

Pēc tam jums būs jāizvēlas iepakojums, kurā vēlaties ievietot failus (burka vai karš). Pēc tam varat atlasīt ierīcē esošo Java versiju. Galīgais lēmums, kas jums būs jāpieņem, ir jūsu lietojumprogrammas atkarību veids.

Spring piedāvā vairākas atkarības, kuras varat izmantot, lai savai lietojumprogrammai pievienotu rekvizītus. Lai savai lietojumprogrammai pievienotu jaunu atkarību, vienkārši noklikšķiniet uz pogas Pievienot atkarības pa labi no Spring Initializr. Veicot šo darbību, ekrānā tiks ģenerēts šāds pārklājums:

Šim lietojumprogrammas paraugam vienīgā atkarība, kas jums būs nepieciešama, ir Spring Web. Šī atkarība ļauj izveidot tīmekļa lietojumprogrammas, izmantojot MVC arhitektūru. Kad esat atlasījis visas atkarības, kuras vēlaties izmantot savā lietojumprogrammā, turpiniet ģenerēt klikšķus. Tādējādi tiks lejupielādēta projekta veidlapa.

Tagad jums ir Spring Boot (kas ir viena no Spring bibliotēkām) projekts. Pēdējais solis ir projekta importēšana vēlamajā IDE. Jūsu pavasara projektam būs šāda projekta struktūra:

Šī ir parasta Maven projekta struktūra, un ir vairāki svarīgi faili, ar kuriem jums jāiepazīstas.

  • Pom.xml: tajā ir ietverti Spring lietojumprogrammas konfigurācijas dati.
  • OnlineShopaholicsApplication.java: šī ir Spring Boot galvenā klase, kas izpilda lietojumprogrammu.
  • OnlineShopaholicsApplicationTest.java: tas ir a JUnit tests klase, kas nodrošina pavasara lietojumprogrammas konteksta (vai konteinera) pareizu ielādi.

Pavasara pieteikuma izpilde

Spring's bootstrap klasei, kas šajā gadījumā ir OnlineShopaholicsApplication klase, ir šāds sākotnējais kods:

iepakojums com.onlineshopaholics;

importsorg.springframework.boot.Pavasara aplikācija;
importsorg.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
publiskiklasēTiešsaistes veikalu lietojumprogramma{
publiskistatisksnederīgsgalvenais(String[] args){
SpringApplication.run (OnlineShopaholicsApplication.klasē, args);
}
}

Viens no svarīgākajiem iepriekš minētā koda aspektiem ir @SpringBootApplication anotācija, kas ir salikta anotācija, kas ļauj jūsu lietojumprogrammai piekļūt trīs citu anotāciju funkcijām:

  • @EnableAutoconfiguration: šī anotācija iespējo Spring Boot automātisko konfigurāciju. Tas nozīmē, ka tas liek Spring boot konfigurēt jebkuru komponentu, kas, pēc tā domām, jūsu lietojumprogrammai būs jāfunkcionē.
  • @ComponentScan: šī anotācija ļauj iespējot komponentu skenēšanu. Šī funkcija ir svarīga, jo tā ļauj Spring automātiski atklāt un reģistrēt citus anotētos komponentus izmantošanai Spring lietojumprogrammas kontekstā (vai konteinerā).
  • @SpringBootConfiguration: šī ir specializēta @Configureation anotācijas forma, kas ļauj reģistrēt pupiņas (vai objektus) pavasara lietojumprogrammas kontekstā.

Otrs svarīgais iepriekš minētā koda aspekts ir galvenais () metodi, tā izpilda jūsu lietojumprogrammu. Kad lietojumprogramma tiek izpildīta tagad, tā vienkārši startē serveri. Tātad, ja vēlaties lietojumprogrammai pievienot vairāk funkcionalitātes, jums būs jāatjaunina kods:

iepakojums com.onlineshopaholics;

importsorg.springframework.boot.Pavasara aplikācija;
importsorg.springframework.boot.autoconfigure.SpringBootApplication;
importsorg.springframework.web.saistīt.anotācija.GetMapping;
importsorg.springframework.web.saistīt.anotācija.RequestParam;
importsorg.springframework.web.saistīt.anotācija.RestController;

@SpringBootApplication
@RestController
publiskiklasēTiešsaistes veikalu lietojumprogramma{
publiskistatisksnederīgsgalvenais(String[] args){
SpringApplication.run (OnlineShopaholicsApplication.klasē, args);
}

@GetMapping("/klients")
publiski Stīga Welcome(@RequestParam (vērtība = "vārds", noklusējumaVērtība = "Klients") Stīga vārds) {
atgrieztiesStīga.format("Laipni lūdzam, %s!", vārds);
}
}

Lietojumprogrammai Spring Boot tagad ir trīs jaunas anotācijas:

  • @RestController: šī anotācija atzīmē klasi kā kontrolieri, tāpēc katra metode iepriekš minētajā klasē (izņemot main()), skata vietā atgriezīs domēna objektu.
  • @GetMapping: šī anotācija kartē HTTP GET pieprasījumus uz noteiktām galvenes metodēm. Tāpēc katru reizi, kad pārlūkprogrammā izveidojat pieprasījumu “/customer”, metode Welcome() apstrādās pieprasījumu, atgriežot virknes vērtību.
  • @RequestParam: šī anotācija norāda, ka metodes parametram jābūt saistītam ar tīmekļa pieprasījuma parametru.

Ar atjaunināto kodu jūsu Pavasaris Tiešsaistes veikalu lietojumprogramma tagad ir klienta lapa, kuru varat skatīt savā pārlūkprogrammā. Lietojumprogrammas izpilde sāks serveri un izveidos izvadi konsolē.

Izvadē ir daudz svarīgas informācijas. Tas norāda, ka serveris darbojas, tas norāda, cik ilgi aizņēma inicializācijas process, un tas norāda, kurā portā darbojas lietojumprogramma (8080, pēc noklusējuma). Tāpēc, ja virzāties uz http://localhost: 8080/klients jūs savā pārlūkprogrammā redzēsit šādu izvadi:

Tagad varat izveidot savu lietojumprogrammas skatu

Vēl viens svarīgs fails projekta struktūrā, ko jūs varētu pamanīt, ir veidnes mapi. Ideālā gadījumā, Tiešsaistes veikalu lietojumprogramma klasei jākalpo kā kontrolierim, kas apstrādā dažādu skatu pieprasījumus. Tāpēc pilnā lietojumprogrammā kontrollera klasē nevajadzētu ietvert tekstu, kas tiks parādīts tās pieprasījuma skatā.

Tā vietā jums būs jāizveido veidņu faili, izmantojot HTML, un jāievieto tie Spring lietojumprogrammas veidņu mapē.