El marco Spring MVC permite la separación de módulos, a saber, Modelo, Vista y Controlador, y maneja sin problemas la integración de la aplicación. Esto permite al desarrollador crear aplicaciones complejas que también utilizan clases Java sencillas. El objeto modelo se puede pasar entre la vista y el controlador usando mapas. En este artículo, veremos cómo configurar una aplicación Spring MVC en el IDE de Eclipse y comprenderemos cómo crear aplicaciones. El marco Spring MVC se compone de los siguientes componentes:
- Modelo : Un modelo puede ser un objeto o una colección de objetos que básicamente contiene los datos de la aplicación.
- Vista : una vista se utiliza para mostrar la información al usuario en un formato específico. Spring admite varias tecnologías como marcador libre, velocidad y hoja de tomillo.
- Controlador : Contiene la parte lógica de la aplicación. La anotación @Controller se usa para marcar esa clase como controlador.
- Front Controller : Sigue siendo el responsable de gestionar el flujo de la aplicación web. DispatcherServlet actúa como un controlador frontal en Spring MVC.
Aquí vamos a crear nuestro primer controlador Spring MVC en Spring Tool Suite IDE.
Requisitos:
- Eclipse (versión EE)/STS IDE
- Archivos JAR de primavera
- Tomcat Apache última versión
Implementación:
A continuación se ilustra paso a paso de la siguiente manera:
Nota : Vamos a utilizar Spring Tool Suite 4 IDE para este proyecto. Consulte este artículo para instalar STS en su máquina local ¿Cómo descargar e instalar Spring Tool Suite (Spring Tools 4 para Eclipse) IDE?
Paso 1: cree un proyecto web dinámico en su STS IDE. Puede consultar este artículo para crear un proyecto web dinámico en STS: ¿Cómo crear un proyecto web dinámico en Spring Tool Suite?
Paso 2: descargue el archivo Spring JAR desde este enlace y vaya a la carpeta src> main> webapp> WEB-INF> lib y pase estos archivos JAR.
Paso 3: Configure el servidor Apache Tomcat y configure el servidor Tomcat con la aplicación. Ahora estamos listos para ir.
Configuración del servlet de despachador
Consulte este artículo ¿Qué es Dispatcher Servlet en Spring? y lea más sobre Dispatcher Servlet, que es un concepto muy importante de entender. Ahora vamos a configurar Dispatcher Servlet con nuestra aplicación Spring MVC.
Paso 4: Vaya al archivo src > main > webapp > WEB-INF > web.xml
Archivo: web.xml
XML
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0"> <display-name>myfirst-mvc-project</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.jsp</welcome-file> <welcome-file>default.htm</welcome-file> </welcome-file-list> <absolute-ordering/> <servlet> <!-- Provide a Servlet Name --> <servlet-name>frontcontroller-dispatcher</servlet-name> <!-- Provide a fully qualified path to the DispatcherServlet class --> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <!-- Provide a Servlet Name that you want to map --> <servlet-name>frontcontroller-dispatcher</servlet-name> <!-- Provide a url pattern --> <url-pattern>/student.com/*</url-pattern> </servlet-mapping> </web-app>
Paso 5: Ahora ve a src > main > webapp > WEB-INF y crea un archivo XML. En realidad, este es un archivo de configuración de Spring como el archivo beans.xml. Y el nombre del archivo debe estar en este formato.
YourServletName-servlet.xml
Por ejemplo, para este proyecto, el nombre del archivo debe ser
frontcontroller-dispatcher-servlet.xml
Entonces, puede crear un archivo de configuración de Spring o simplemente puede crear un archivo XML simple y agregar las siguientes líneas de código dentro de ese archivo.
Archivo: frontcontroller-despachador-servlet.xml
XML
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"> </beans>
Creando el primer controlador Spring MVC
Paso 6: Ahora, creemos algunos controladores. Vaya a src/main/java y cree un nuevo paquete de controladores (por ejemplo, com.student.controllers) según su elección. Y dentro de eso, cree una clase Java y nombre la clase como DemoController. Ahora, cómo decirle a Spring que esta es nuestra clase de controlador. Entonces, la forma en que vamos a decirle a Spring es marcándolo con una anotación @Controller .
@Controller public class DemoController {}
Nota: Spring inicializará automáticamente la clase que tenga una anotación @Controller y registrará esa clase con el contenedor Spring.
Ahora vamos a crear un método simple dentro de la clase Controller y usar la anotación @RequestMapping y @ResponseBody antes del método, algo como esto.
// Annotation @ResponseBody @RequestMapping("/hello") // Method public String helloWorld() { return "Hello World!"; }
Ahora entendamos ambas anotaciones.
@RequestMapping(“/hola”), entonces, ¿qué significa? Esta línea significa que, en la URL, si alguien accede a student.com/hello , este método en particular se ejecutará y realizará la operación que está escrita dentro de ese método en particular. Por ejemplo, para este proyecto, solo devolvemos un mensaje «¡Hola mundo!» y esperamos que esto se muestre en el navegador del cliente. Pero esto no sucederá. Y para que esto suceda, necesitamos usar la anotación @ResponseBody. Entonces, la anotación @ResponseBody básicamente va a escribir este mensaje en particular, aquí «¡Hola mundo!», en su respuesta HTTP.
Archivo: DemoController.java
Java
// Java Program to Illustrate DemoController Class package com.student.controllers; // Importing required classes import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; // Annotation @Controller // Class public class DemoController { // Annotation @ResponseBody @RequestMapping("/hello") // Method public String helloWorld() { return "Hello World!"; } }
Paso 7: agregue la siguiente línea dentro del archivo frontcontroller-dispatcher- servlet.xml
<context:component-scan base-package="com.student.controllers"></context:component-scan>
Archivo: frontcontroller-despachador-servlet.xml
XML
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"> <context:component-scan base-package="com.student.controllers"></context:component-scan> </beans>
Ejecute su primer controlador Spring MVC
Paso 8: para ejecutar su aplicación Spring MVC , haga clic con el botón derecho en su proyecto> Ejecutar como> Ejecutar en el servidor y ejecute su aplicación como se muestra en la imagen a continuación.
Después de eso, use la siguiente URL para ejecutar su controlador como se muestra en la imagen a continuación. Todos los demás detalles se pueden percibir a través de la imagen de abajo de la siguiente manera:
http://localhost:8080/myfirst-mvc-project/student.com/hello
Publicación traducida automáticamente
Artículo escrito por AmiyaRanjanRout y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA