Publicado el 2025-04-19
Escrito por C. V. Charco
En esta entrada vamos a contemplar la creación de un proyecto de Spring Boot desde cero con Spring Initializr desde el editor de código Visual Studio Code (en adelante Vscode).
Actualmente podemos crear proyectos de Spring Boot de dos formas:
Spring Boot Extension Pack a nuestro editor.
Para comenzar el proyecto, abriremos Vscode y pulsaremos CTRL + SHIFT + P (o CMD + SHIFT + P en MAC) para abrir la paleta de comandos. Aquí escribiremos initializr y seleccionaremos la opción de crear un nuevo proyecto de Maven con Spring Initializr.
A continuación, seleccionaremos la versión de Spring Boot (para este proyecto se está usando la versión 3.4.4) y luego elegiremos el lenguaje Java. Después se nos pedirá el nombre del paquete y del proyecto. En mi caso he puesto com.vcharco como nombre del paquete y ticketapi como nombre del proyecto. Ahora se nos pedirá indicar si queremos generar un jar o un war; seleccionaremos jar, ya que esta opción incluye el servidor web integrado y permite desplegar la aplicación de forma independiente. Por último, elegiremos la versión de Java. En nuestro caso escogeremos la versión 21, que es la última versión LTS a la fecha de escribir este post.
Una vez configuradas todas estas opciones procedemos a agregar las dependencias necesarias para nuestro proyecto. Por ahora solo necesitaremos las siguientes:
Una vez creado el proyecto y abierto en nuestro editor, comprobamos que se ha generado una estructura de directorios extensa. A nosotros nos interesa por ahora todo lo que se encuentre contenido en src/main. Dentro de este directorio ubicaremos un directorio (o más bien un conjunto de ellos) que componen el nombre de nuestro proyecto y dentro encontramos la clase TicketapiApplication.java.
TicketapiApplication.java es la clase principal que arranca toda nuestra aplicación. Spring Boot la genera automáticamente cuando creamos el proyecto, y cumple una función muy específica y esencial.
package com.vcharco.ticketapi;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class TicketapiApplication {
public static void main(String[] args) {
SpringApplication.run(TicketapiApplication.class, args);
}
}
@SpringBootApplication es una combinación de tres anotaciones:@Configuration: marca esta clase como una clase de configuración de Spring.@EnableAutoConfiguration: dice a Spring Boot que configure automáticamente los beans según las dependencias que detecte.@ComponentScan: escanea el paquete actual y subpaquetes en busca de componentes como controladores, servicios, etc.No te preocupes si todavía no comprendes qué es una clase de configuración, un Bean o un controlador, los iremos viendo a lo largo de la serie.
main() es el punto de entrada de la aplicación. SpringApplication.run(...) arranca el servidor embebido (como Tomcat) y levanta el contexto de Spring.En esta clase realmente no vamos a hacer nada más por ahora, pero resultaba necesario conocerla. Ahora vamos a proceder a crear una nueva clase que permita exponer un endpoint básico en el siguiente apartado.
Para probar que nuestro proyecto está en marcha, necesitaremos arrancarlo y probar llamar algún endpoint. Un endpoint es una URL específica de nuestra API donde una aplicación cliente puede enviar peticiones para interactuar con el servidor (obtener, crear, actualizar o eliminar datos).
Para crear este controlador basta con agregar un nuevo archivo en la misma ubicación donde tenemos nuestra clase TicketapiApplication.java, solo que la llamaremos HelloController.java. Si ya has desarrollado APIs con Spring previamente te estarás tirando de los pelos al ubicar ahí el nuevo controlador, pero no te preocupes, esta no será la ubicación definitiva, ahora solo queremos crear un controlador muy básico de ejemplo que eliminaremos más adelante.
Una vez creado el archivo, escribiremos el siguiente contenido:
package com.vcharco.ticketapi;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping
public String hello() {
return "Hola, mundo";
}
}
Ahora arranqueremos la aplicación haciendo click en el botón de play que tiene forma de triángulo verde. Si no lo vemos, podemos pulsar la combinación CTRL + SHIFT + D (o CMD + SHIFT + D en Mac) y lo encontraremos en la parte superior izquierda.
Por último, vamos a abrir un navegador web y navegar a http://localhost:8080, que es la ruta donde Spring despliega por defecto nuestro proyecto. Nada más acceder debemos estar viendo el mensaje de hola, mundo.
Hasta aquí en cuanto a la creación de proyectos en Spring Boot. En otras entradas contemplaremos cómo crear features, conectar una base de datos, configuraciones, estrategias de caché, logging, autenticación y mucho más. ¡No te lo pierdas!