Un Spring MVC este un cadru Java care este folosit pentru a construi aplicații web. Urmează modelul de design Model-View-Controller. Acesta implementează toate caracteristicile de bază ale unui cadru de primăvară de bază, cum ar fi inversarea controlului, injecția de dependență.un Spring MVC oferă o soluție elegantă de a utiliza MVC în cadrul spring cu ajutorul DispatcherServlet. Aici, DispatcherServlet este o clasă care primește cererea de intrare și o mapează la resursa potrivită, cum ar fi controlere, modele și vizualizări.,

Spring Web Model-View-Controller

  • Model – un model conține datele aplicației. Datele pot fi un singur obiect sau o colecție de obiecte.
  • Controller-un controler conține logica de afaceri a unei aplicații. Aici, adnotarea @ Controller este utilizată pentru a marca clasa ca controler.
  • View-o vizualizare reprezintă informațiile furnizate într-un anumit format. În general, JSP+JSTL este utilizat pentru a crea o pagină de vizualizare. Deși spring acceptă și alte tehnologii de vizualizare, cum ar fi Apache Velocity, Thymeleaf și FreeMarker.,
  • Front Controller-în Spring Web MVC, clasa DispatcherServlet funcționează ca controler frontal. Este responsabil să gestioneze fluxul aplicației Spring MVC.

Înțelegerea fluxului de Spring Web MVC

  • Cum este afisat in figura, toate cererile de intrare este interceptat de DispatcherServlet care funcționează ca front controller.
  • DispatcherServlet primește o intrare de mapare handler din fișierul XML și transmite cererea controlorului.
  • controlerul returnează un obiect de ModelAndView.,
  • DispatcherServlet verifică intrarea view resolver în fișierul XML și invocă componenta view specificată.

avantajele Spring MVC Framework

Să vedem câteva dintre avantajele Spring MVC Framework:-

  • roluri Separate – Spring MVC separă fiecare rol, în cazul în care obiectul model, controler, obiect de comandă, view resolver, DispatcherServlet, validator, etc. poate fi îndeplinită de un obiect specializat.
  • Light-weight-se folosește container servlet lumină-greutate pentru a dezvolta și implementa aplicația.,configurare puternică-oferă o configurație robustă atât pentru clasele cadru, cât și pentru cele de aplicații, care include referențiere ușoară în contexte, cum ar fi de la controlere web la obiecte de afaceri și validatoare.
  • dezvoltare rapidă-primăvara MVC facilitează dezvoltarea rapidă și paralelă.
  • cod de afaceri reutilizabil-în loc să creăm obiecte noi, ne permite să folosim obiectele de afaceri existente.
  • ușor de testat-în primăvară, în general, creăm clase JavaBeans care vă permit să injectați datele de testare folosind metodele setter.,
  • Mapping flexibil-oferă adnotările specifice care redirecționează cu ușurință pagina.

Spring Web MVC Framework Example

Să vedem exemplul simplu al unui cadru Spring Web MVC. Pașii sunt după cum urmează:

  • încărcați fișierele jar de primăvară sau adăugați dependențe în cazul Maven
  • creați clasa controller
  • furnizați intrarea controlerului în web.,fișier xml
  • Defini bean în fișier XML separat
  • Afișare mesaj în pagina JSP
  • Start server și implementarea proiectului

Structura de Directoare de Primăvară MVC

Structura de Directoare de Primăvară MVC folosind Maven

Necesar fișierele Jar sau Maven Dependență

Pentru a rula acest exemplu, aveți nevoie pentru a încărca:

  • Core Primăvară fișiere jar
  • Primavara Web fișierele jar
  • JSP + JSTL borcan de fișiere (Dacă utilizați un alt punct de vedere tehnologia apoi încărcați corespunzător fișierele jar).,

descărcați Link-ul: Descărcați toate fișierele jar pentru primăvară, inclusiv JSP și JSTL. dacă utilizați Maven, nu este necesar să adăugați fișiere jar. Acum, trebuie să adăugați dependența maven la pom.fișier xml.

furnizați informații despre proiect și configurare în pom.fișier xml.

pom.xml

creați clasa controller

pentru a crea clasa controller, folosim două adnotări @Controller și @RequestMapping.

adnotarea @ Controller marchează această clasă ca controler.,

@Requestmapping adnotare este folosit pentru a mapa clasa cu numele URL specificat.

HelloController.java

furnizați intrarea controlerului în web.fișier xml

în acest fișier xml, specificăm clasa Servlet DispatcherServlet care acționează ca controler frontal în Spring Web MVC. Toate cererile primite pentru fișierul html vor fi redirecționate către Dispecerservlet.

web.xml

definiți fasolea în fișierul xml

acesta este fișierul de configurare important în care trebuie să specificăm componentele de vizualizare.,

elementul context: component-scan definește pachetul de bază în care DispatcherServlet va căuta clasa controlerului.

acest fișier xml ar trebui să fie localizat în directorul WEB-INF.

servlet de primăvară.xml

Afișați mesajul în pagina JSP

aceasta este pagina JSP simplă, afișând mesajul returnat de controler.

index.jsp