Spring Boot 3 es una nueva versión de Spring Boot que se integra con Spring 6. Esto implica una serie de cambios importantes a nivel de nuestros desarrollos. Quizás el cambio más importante viene dado por Jakarka EE .
Recordemos que esta nueva especificacion hace que cambiemos los packages de javax a jakarta. Pueden parecer cambios tontos pero afectan a un conjunto de imports considerables y nos llevara tiempo adaptar las aplicaciones . Sin embargo es un cambio interesante porque implica un mayor control por parte de la comunidad open source del propio lenguaje Java y su evolución.
Spring Boot 3 y JDK 17
Otra de las características fundamentales es que abordamos el uso de Java 17 como JDK obligatorio . Lo cual animará poco a poco a los desarolladores a ir migrando las aplicaciones a un JDK más moderno. Algo que es importante ya que mucha gente todavía esta utilizando JDK 8 u 11.
Java Records
¿Que novedades incluye el JDK 17′? . Ninguna que me parezca crucial pero recordemos que estandarizará el uso de Java Records algo que viene de JDK 14 y 16 . Por lo tanto es un buen salto que Spring apueste por un JDK muy moderno cuando trabajemos con la nueva versión 3.
TextBlocks
Ademas de este cambio a nivel de Java Records soportará también el uso de Text Blocks que son estructuras de texto multilínea.
String textBlock = """ hola este texto es multilinea """;
Spring Boot y Spring Boot Clásico
Ambas cosas son importantes. ¿Podemos configurar Spring Boot 3 de la misma manera que el proyecto de Spring 2 que teníamos anteriormente?. Yo no me encontrado con muchos problemas a nivel de clases habituales como Repositorios , Servicios ,Controllers etc. Sin embargo si que cuesta más configurar temas a nivel de seguridad y JWT . Son clases y configuraciones que hay que retocar bastante para que funcionen de forma correcta y no aparezcan situaciones de interfaces o métodos deprecados.
Acabamos de ver como usar Java equals y hashcode