Otsikosta voimme nähdä hyvin tuntemattoman substantiivin "Spring Web MVC", tämä termi kuulostaa erittäin ylevalta, mutta mitä se tarkalleen on? Tämä on virallisen asiakirjan selitys: Spring Web MVC on alkuperäinen verkkokehys, joka on rakennettu Servlet API:lle ja se on sisällytetty Spring-kehykseen alusta alkaen. Sen virallinen nimi "Spring Web MVC" tulee sen lähdemoduulin nimestä (Spring-webmvc), mutta sitä kutsutaan usein nimellä SpringMVC
Sillä ei ole väliä, jos et ymmärrä inhimillisesti sanottuna:Spring Web MVC on verkkokehys Kuitenkin, jotta voimme todella ymmärtää MVC:n, MVC on lyhenne sanoista Model View Controller. Se jakaa ohjelmistojärjestelmät malleihin , näkymä ja ohjain kolme perusosaa alla olevan kuvan mukaisesti Voit kysyä näiden osien määritelmiä: • Näkymä (view) viittaa resurssiin, joka on tarkoitettu vuorovaikutukseen selaimen kanssa ja tietojen näyttämiseen sovelluksessa. • Malli on sovelluksen pääosa ja sitä käytetään ohjelman datalogiikan käsittelyyn. • Ohjain voidaan ymmärtää lähettäjänä, jonka avulla päätetään, mitä mallia tulee käyttää näkymästä tulevien pyyntöjen käsittelyyn ja mihin näkymään on palattava käsittelyn jälkeen.Valmis käytettäväksi näkymien ja mallien yhdistämiseen
Pääprosessi on: View lähettää pyynnön Controllerille. Tällä hetkellä Controllerissa valitaan, mikä ratkaisu (ratkaisumalli) voi ratkaista pyynnön ongelma Kun malli on käsitelty, malli palauttaa ensin käsittelytulokset ohjaimelle ja sitten ohjain palauttaa tulokset näkymään. Tämä on MVC:n pääkehys ja idea ongelmien ratkaisemiseksi.
Esimerkiksi mennä ravintolaan syömään Asiakkaan tultua myymälään, tarjoilija tulee vastaanottamaan asiakkaan tilauksen aterian tilauksen jälkeen, ja toimisto antaa tilaukset keittiöön asiakkaan ruokalistan perusteella on vastuussa ruoanlaitosta, kerro tarjoilijalle ruokalistan mukaan, että tämä on pöydän X vieraan ateria. Tämän prosessin aikana Tarjoilija on View, joka vastaa asiakkaiden vastaanottamisesta, auttaa asiakkaita tilaamaan ruokaa ja tarjoilee ruokaa asiakkaille. Front office on Controller, joka valitsee käyttäjän tilaustilanteen perusteella kenelle kokille antaa tilaukset. Takakeittiö on malli, joka täyttää asiakkaan ruokailutarpeet etukonttorin vaatimusten mukaisesti.
Yhteenvetona: MVC on arkkitehtoninen suunnittelumalli ja idea, ja Spring MVC on MVC-idean erityinen toteutus. Lisäksi Spring MVC on myös Web-kehys. Yhteenvetona, Spring MVC on Web-kehys, joka toteuttaa MVC-mallin Koska SpringBoot on SpringMVC:n erityinen toteutus, luomamme projektit ovat yleensä SpringBootteja. Tämä selittää myös sen, miksi joidenkin opiskelijoiden luoma projekti on SpringBoot. Spring Boot voi lisätä monia riippuvuuksia, ja käyttää näitä riippuvuuksia eri toimintojen toteuttamiseen lisäämällä Spring WebMVC -kehyksen.
Esimerkiksi: keittiötä voidaan käyttää ruoanlaittoon, mutta todellinen ruoanlaittotoiminto on tulipalo ja erilaiset ruoanlaittoon liittyvät materiaalit ja työkalut. Keittiö on kuin SpringBoot liesi jne., ruoanlaitto on MVC Tuhansia vuosia sitten, kun kevät toteutti MVC:n, se yhdisti myös omien projektiensa ominaisuuksia.
Yllä olevan ruoan tilausesimerkin pohjalta suurin muutos on se, että pääsemme suoraan sisään ravintolaan ja tilaamme ruuat suoraan vastaanotosta sen sijaan, että soittaisimme suoraan tarjoilijalle tilaamaan ruokaa.
Kuinka oppia Spring MVC?
Kun olemme ymmärtäneet lyhyesti, mitä Spring MVC on, voimme saada alustavan käsityksen siitä, kuinka Spring MVC:tä oppii. Kun opimme Spring MVC:tä, painopiste on oppia olemaan vuorovaikutuksessa käyttäjäohjelmien kanssa selaimen kautta. Jaettu pääasiassa kolmeen osaan:
Muodosta yhteys: Yhdistä käyttäjä (selain) ja Java-ohjelma, eli osoitteeseen pääseminen voi kutsua Spring-ohjelmaamme.
Pyyntö: Käyttäjä tuo mukanaan joitain parametreja tehdessään pyyntöä Ohjelmassa on löydettävä tapa saada parametrit, joten pyyntöosa on pääasiassa parametrien saamisen funktio.
Vastaus: Liiketoimintalogiikan suorittamisen jälkeen ohjelman suorituksen tulos on palautettava käyttäjälle, mikä on vastaus.
Yleiset Spring Web MVC -merkinnät
Ensin opimme yhteyden: ja Spring MVC -merkinnät ovat tärkeä osa yhteyttä. Siksi blogini kehyksen järjestys liittyy läheisesti. Mennään asiaan, ei enää leikkiä.
1. Käytä @RequestMappingia Spring MVC:ssä URL-reitityskartoituksen toteuttamiseen, joka on selainyhteysohjelman tehtävä. Katsotaanpa ensin koodin kirjoittamista. Kun olemme suorittaneet sen, kirjoita URL-osoite http://127.0.0.1:8080/hello selaimeen Voit nähdä vaikutuksen. Mitä tulee siihen, miksi tämä sivusto on OK, sinun ei tarvitse ymmärtää sitä nyt, mutta ymmärrät sen varmasti tulevaisuudessa, kun opinnäytesi syvenee. Vaikutus on kuin
Huomautus: Näemme, että loin tiedoston hakemistoon src/main/java/com.example.j20240711. Yleinen tapa on, että kirjoitamme normaalin yrityskoodin src:llä ja testikoodin tekstillä. Koska käytän IDEA2022.3.3:n ammattiversiota, jotkut sivut voivat olla erilaisia kuin sinun, mutta yleinen kehys on sama. Itse asiassa voimme käyttää myös standardiversiota kevään kirjoittamiseen, mutta lisäosien asentaminen on hankalampaa. Valitsin ammattiversion säästääksesi ongelmia. Jos haluat käyttää myös ammattiversiota, voit etsiä opetusohjelmia CSDN:stä hinta on erittäin halpa, joten voit käyttää myös ammattiversiota. @RequestMapping on yksi yleisimmin käytetyistä merkinnöistä Spring Web MVC -sovelluksissa. Se tarkoittaa, että kun palvelu vastaanottaa pyynnön, pyyntö polulla /sayHi koodi tälle menetelmälle sayHi. Reittikartoitus: Kun käyttäjä käyttää URL-osoitetta (voidaan ymmärtää verkkosivuston osoitteeksi), prosessia, jossa käyttäjän pyyntö kartoitetaan ohjelman tietyn luokan menetelmään, kutsutaan reittikartoitukseksi. Huolelliset opiskelijat huomaavat, että yllä oleva huomautus poistaa @RequestMappingin ja @RestControllerin. Mitä hyötyä tästä merkinnästä on? Voimme yrittää poistaa hänet ensin.
Näet, että 404 tulee näkyviin ja sivua ei löydy.
Tätä @RestController tekee. Projektissa on monia luokkia, ja jokaisella luokalla voi olla useita menetelmiä. Mistä Spring-ohjelma tietää, mikä menetelmä suoritetaan? Spring tarkistaa kaikki luokat. Jos luokkaan on merkitty @RestController, Spring tarkastelee vain tämän luokan menetelmiä. Oletko lisännyt @RequestMapping-merkinnän. Käytämme sitä ensin ja puhumme siitä myöhemmin.
@RequestMappingin rooli @RequestMapping voi muokata sekä luokkia että menetelmiä luokkia ja menetelmiä muutettaessa käytetty osoite on luokkapolku + menetelmäpolku. @RequestMapping tunnistaa luokan: määrittää kartoituspyynnön pyyntöpolun alkutiedot @RequestMapping tunnistaa menetelmän: määrittää täsmäytyspyynnön pyyntöpolun tiedot
Ilmoitus: @RequestMappingin URL-polun edessä voi olla / (vinoviiva) Kun Spring-ohjelma käynnistyy, se tekee päätöksen. Normaalisti URL-polku, jonka lisäämme / @RequestMapping, voi olla myös monikerroksinen polku Lopulta käsin se on edelleen luokkapolku + menetelmäpolku, kuten: Yllä oleva esittelee pääasiassa kaksi huomautusta. Itse asiassa @RequestMapping ei ole vielä selitetty, kirjoitan merkintöjen seuraavaa osaa erikseen ja kirjoitan blogia. Esitän ensin kysymyksen: Entä jos haluamme tietää, tukeeko tämä merkintä saamista vai lähettämistä? Tällä hetkellä meidän on kirjoitettava käyttöliittymäkoodi, jotta voimme lähettää tietoja ja tarkistaa, tukeeko se get tai post -toimintoa aikaa, ohjelmisto Postman Vaikutus näkyy, ja seuraavassa numerossa puhutaan sen käytöstä. Esikatselu seuraavaan numeroon: Selitä Postmanin pääkäyttö ja toinen avainkohta Spring MVC:n oppimisessa: pyynnöt.