Aplicación Spring sin ninguna configuración .xml

Aplicación Spring MVC Sin el archivo web.xml, hemos eliminado el archivo web.xml, pero nos quedamos con el archivo XML de configuración de primavera que es este archivo “ aplicación-config.xml ”. Entonces, aquí vamos a ver cómo eliminar el archivo XML de configuración de Spring y crear una aplicación de Spring sin ninguna configuración .xml.  

Implementación: Proyecto 

Demostremos paso a paso la aplicación Spring sin ninguna configuración .xml que es la siguiente: 

Paso 1: configurar el proyecto

Nota: Vamos a utilizar Spring Tool Suite 4 IDE para este proyecto. Consulte antes de instalar STS en su máquina local ¿Cómo descargar e instalar Spring Tool Suite (Spring Tools 4 para Eclipse) IDE? 

Vaya a su STS IDE, luego cree un nuevo proyecto maven, Archivo> Nuevo> Proyecto Maven, y elija el siguiente arquetipo como se muestra en la imagen a continuación:  

 

Paso 2: agregar algunas dependencias de Maven

Agregue las siguientes dependencias y complementos de maven a su archivo pom.xml. 

<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>5.3.18</version>
</dependency>

<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>4.0.1</version>
    <scope>provided</scope>
</dependency>

<!-- plugin -->
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.6</version>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
    </plugins>
</build>

A continuación se muestra el código completo para el archivo pom.xml después de agregar estas dependencias.

Archivo: pom.xml 

XML

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.geeksforgeeks</groupId>
    <artifactId>spring-calculator</artifactId>
    <packaging>war</packaging>
    <version>0.0.1-SNAPSHOT</version>
    <name>spring-calculator Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.3.18</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
    <build>
        <finalName>spring-calculator</finalName>
        <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.6</version>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
    </plugins>
    </build>
</project>

Paso 3: Creación de una aplicación Spring sin ninguna configuración .xml

Antes de pasar a la parte de codificación, echemos un vistazo a la estructura del archivo en la imagen de abajo. Como puede ver en la estructura de archivos, no tenemos ningún archivo con configuración .xml. 

 

Entonces, primero cree una carpeta src/main/java y dentro de esta carpeta cree una clase llamada CalculatorApplicationInitializer y colóquela dentro del paquete com.geeksforgeeks.calculator.config e implemente la interfaz WebApplicationInitializer . Consulte la imagen de abajo.

 

Ahora tenemos que crear la clase de configuración de primavera y registrar la clase con nuestro WebApplicationContext. Así que vaya a la carpeta src/main/java y dentro de esta carpeta cree una clase llamada CalculatorAppConfig y colóquela dentro del paquete com.geeksforgeeks.calculator.config

Archivo: archivo CalculatorAppConfig.java

Java

// Java Illusion for CalculatorAppConfig Class
 
package com.geeksforgeeks.calculator.config;
 
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
 
// Class
@Configuration
@ComponentScan(basePackages = "com.geeksforgeeks.calculator.controllers")
public class CalculatorAppConfig {
 
}

Hemos utilizado la anotación @Configuration y @ComponentScan en la clase anterior. En general, podemos decir que esta clase es el reemplazo del siguiente archivo .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.geeksforgeeks.calculator.controllers"></context:component-scan>
         
</beans>

Archivo: CalculatorApplicationInitializer.java

Java

// Java Program to Illustrate
// CalculatorApplicationInitializer Class
 
package com.geeksforgeeks.calculator.config;
 
// Importing required classes
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRegistration;
import org.springframework.web.WebApplicationInitializer;
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
import org.springframework.web.servlet.DispatcherServlet;
 
// Class
// Implementing WebApplicationInitializer interface
public class CalculatorApplicationInitializer
    implements WebApplicationInitializer {
 
    // Method
    public void onStartup(ServletContext servletContext)
        throws ServletException
    {
 
        AnnotationConfigWebApplicationContext
            webApplicationContext
            = new AnnotationConfigWebApplicationContext();
 
        // Registering the spring config class
        webApplicationContext.register(
            CalculatorAppConfig.class);
 
        // Creating a dispatcher servlet object
        DispatcherServlet dispatcherServlet
            = new DispatcherServlet(webApplicationContext);
 
        // Registering Dispatcher Servlet
      // with Servlet Context
        ServletRegistration
            .Dynamic myCustomDispatcherServlet
            = servletContext.addServlet(
                "myDispatcherServlet", dispatcherServlet);
 
        // Setting load on startup
        myCustomDispatcherServlet.setLoadOnStartup(1);
 
        // Adding mapping URL
        myCustomDispatcherServlet.addMapping("/gfg.com/*");
    }
}

Paso 4: Crear controlador y probar la aplicación

Vaya a la carpeta src/main/java y dentro de esta carpeta cree una clase llamada GfgController y colóquela dentro del paquete ‘com.geeksforgeeks.calculator.controllers’ . A continuación se muestra el código para el archivo GfgController.java .

Archivo: GfgController.java

Java

// Java Program to Illustrate GfgController Class
 
package com.geeksforgeeks.calculator.controllers;
 
// Importing required classes
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
 
// Class
@Controller
public class GfgController {
 
    // Testor method
    @RequestMapping("/welcome")
    @ResponseBody
    public String helloGfg()
    {
        return "Welcome to GeeksforGeeks!";
    }
}

Paso 5: Ejecute la aplicación

Ahora ejecute su aplicación Spring MVC y presione la siguiente URL

http://localhost:8080/spring-calculator/gfg.com/welcome

Y podemos ver la salida como se muestra en la imagen de abajo como se muestra a continuación de la siguiente manera: 

 

Publicación traducida automáticamente

Artículo escrito por AmiyaRanjanRout y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *