Para comenzar a desarrollar aplicaciones con Spring Boot, es fundamental preparar un entorno de trabajo robusto y coherente. Este proceso implica instalar y configurar herramientas clave: el JDK, un entorno de desarrollo integrado (IDE), Apache Maven y un cliente Git. A continuación se describe una guía práctica para lograrlo, con énfasis en compatibilidad, mantenibilidad y buenas prácticas modernas.
Entorno de desarrollo recomendado
Se recomienda usar Java 17 o superior (en lugar de Java 8, que ya está obsoleto), un IDE como IntelliJ IDEA Ultimate o Community Edition (versión 2022.3 o posterior), Maven 3.8.6+ y Git 2.35+. Estas versiones garantizan soporte completo para las últimas características de Spring Boot 3.x y compatibilidad con Jakarta EE 9+.
Configuración paso a paso
1. Instalación del JDK
Descargue el JDK LTS desde Eclipse Temurin o Oracle JDK. Tras instalarlo, configure las variables de entorno:
set JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-17.0.1+12
set PATH=%JAVA_HOME%\bin;%PATH%
Verifique la instalación ejecutando java -version en una terminal. La salida debe mostrar una versión igual o superior a 17.0.1.
2. Configuración de IntelliJ IDEA
Tras instalar IDEA, habilite los plugins necesarios: Spring Boot, Lombok (opcional) y Git Integration. En Settings → Build → Maven, configure la ruta de Maven local y especifique un repositorio personalizado (por ejemplo, C:\m2-repo) para evitar conflictos con otros proyectos.
3. Gestión de dependencias con Maven
En lugar de modificar manualmente settings.xml, utilice perfiles Maven. Cree un perfil spring-boot-dev en ~/.m2/settings.xml:
<profiles>
<profile>
<id>spring-boot-dev</id>
<properties>
<maven.repo.local>C:/m2-repo</maven.repo.local>
</properties>
</profile>
</profiles>
<activeProfiles>
<activeProfile>spring-boot-dev</activeProfile>
</activeProfiles>
4. Integración con Git
Configure Git en IDEA apuntando a git.exe (normalmente en C:\Program Files\Git\bin\git.exe). Para clonar proyectos desde GitHub, use la opción Get from VCS en el menú principal, ingresando la URL del repositorio.
Creación de un proyecto Spring Boot
Método 1: Usando Spring Initializr (recomendado)
Acceda a start.spring.io y seleccione:
- Project: Maven Project
- Language: Java
- Spring Boot: 3.2.0 (o última estable)
- Dependencies: Spring Web, Spring Boot DevTools, Lombok
Genere el proyecto y descomrpímalo. Al importarlo en IDEA, este detectará automáticamente la estructura y resolverá las dependencias.
Método 2: Creación manual con Maven
Para mayor control, cree un pom.xml minimalista con soporte para Spring Boot 3:
<?xml version="1.0" encoding="UTF-8"?>
<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
https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>boot-quickstart</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.2.0</version>
<relativePath/>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
Desarrollo del primer servicio REST
Cree una clase principal con anotaciones modernas:
package com.example.boot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
public class BootStarterApp {
public static void main(String[] args) {
SpringApplication.run(BootStarterApp.class, args);
}
}
@RestController
class GreetingController {
@GetMapping("/api/hello")
String sayHello() {
return "¡Bienvenido a Spring Boot!";
}
}
Este código define una aplicación autocontenida que inicia un servidor Tomcat embebido y expone un ednpoint HTTP GET en /api/hello.
Ejecución y empaquetado
Desde IDEA, ejecute la clase BootStarterApp. El servidor iniciará en http://localhost:8080. Para probarlo, acceda a http://localhost:8080/api/hello.
Para generar un artefacto ejecutable:
- Desde IDEA: Ejecute el objetivo Maven
packageen el panel Maven. - Desde terminal: Ejecute
mvn clean packageen la raíz del proyecto.
El JAR resultante (target/boot-quickstart-0.0.1-SNAPSHOT.jar) se puede ejecutar con:
java -jar target/boot-quickstart-0.0.1-SNAPSHOT.jar
Personalización básica de configuración
Cree src/main/resources/application.yml para ajustar comportamientos sin tocar código:
server:
port: 8081
error:
include-message: always
include-binding-errors: always
spring:
application:
name: boot-quickstart
profiles:
active: dev
logging:
level:
root: INFO
com.example: DEBUG
Esta configuración cambia el puerto, activa mensajes detallados de error y habilita el modo de desarrollo con registro ampliado.