Newsletter Java: Novedades de la Semana 3 Febrero 2025

Tu newsletter semanal de Programando En Java

¡Hola Javero! 👋

En esta edición encontrarás lo último del ecosistema Java: un video imperdible, actualizaciones importantes de JDK y JDK Mission Control, mejoras en Spring Framework y Spring Data, novedades de Micronaut, Hibernate, Vert.x, Gradle y mucho más.

¡Descubre cómo Java sigue evolucionando y marcando tendencia! 🚀🚀

Redes Sociales

🔧 Actualizaciones del Ecosistema Java

OpenJDK y JDK Updates

  • JDK Mission Control 9.1.0

    • Qué trae: Correcciones de errores y mejoras, como el uso de tipos personalizados en JFR Writer API y soporte para tipos primitivos en convertidores.

    • Enlace:
      🔗 Detalles en la lista de issues

  • JDK 24 – Build 36 y Release Candidate

  • JDK 25 – Build 10

🤩 ¡Tu opinión importa!

Ayúdame a mejorar esta newsletter y necesito tu ayuda. Responde esta encuesta (menos de 1 minuto) para contarme qué temas prefieres y cómo puedo mejorarla.

💬 Sesión de Mentoría 1:1

¿Quieres llevar tus conocimientos de Java y Spring al siguiente nivel?
¡Estoy aquí para ayudarte!

  • 15 minutos gratuitos para resolver tus dudas técnicas.

  • Sesiones personalizadas de 1 hora para profundizar en tus proyectos y retos.

✌️ Mentoría GRATIS: Reserva ahora

😎 Mentoría personalizada: Reserva ahora

🛠️ Novedades en Frameworks y Herramientas

🍃 Spring Framework y Spring Data

  • Spring Framework 7.0.0 – 2nd Milestone (M2)

    • Qué trae:

      • Mejoras en el método equals() de AnnotatedMethod.

      • Optimización en HandlerMethod para resolver fallos en configuraciones CORS.

      • Refinamiento en GenericApplicationContext, añadiendo @Nullable con JSpecify en el parámetro constructorArgs de registerBean().

    • Enlace:
      🔗 Release notes de Spring Framework 7.0.0-M2

  • Spring Data 2025.0.0 – Primer Milestone

    • Qué trae:

      • Soporte para búsqueda vectorial en MongoDB Atlas y Cassandra Vector Search.

      • Nuevo tipo de dato Vector para facilitar la abstracción y portabilidad en modelos de dominio.

    • Enlace:
      🔗 Release notes de Spring Data 2025.0.0

  • Spring Tools 4.28.1

🔥Frameworks y Librerias

  • Open Liberty 25.0.0.2-beta

    • Qué trae: Configuración del MicroProfile Telemetry 2.0 para enviar logs de auditoría a un colector OpenTelemetry.

    • Enlace:
      🔗 Detalles en Open Liberty

  • Micronaut 4.7.6

  • Hibernate ORM 7.0.0 – 4th Beta Release

    • Qué trae:

      • Migración a Jakarta Persistence 3.2, base mínima en JDK 17 y mejoras en validaciones de modelos de dominio.

      • Transición de Hibernate Commons Annotations a Hibernate Models para el procesamiento a bajo nivel.

    • Enlace:
      🔗 Release notes de Hibernate ORM 7.0.0 Beta4
      🔗 Migration Guide

  • Hibernate Reactive 2.4.5.Final

  • Eclipse Vert.x 5.0.0 – 5th Release Candidate

  • Micrometer

    • Micrometer Metrics 1.15.0 – 2nd Milestone:

      • Qué trae: Mejoras en documentación, correcciones de bugs y actualización de dependencias, incluyendo la eliminación de manejos especiales de los códigos HTTP 404 y 301 en instrumentación con OkHttp; y deprecación de SignalFxMeterRegistry a favor de OtlpMeterRegistry.

      • Enlace:
        🔗 Release notes de Micrometer Metrics 1.15.0-M2

    • Micrometer Tracing 1.5.0 – 2nd Milestone:

  • Piranha Cloud 25.2.0

    • Qué trae:

      • Mejoras en documentación, actualizaciones de dependencias y eliminación de extensiones de compatibilidad con GlassFish 7.x y Tomcat 10.x.

      • Nueva capacidad para configurar el tamaño máximo de archivos en las clases de FileUpload.

    • Enlace:
      🔗 Release notes de Piranha 25.2.0

  • Project Reactor

    • Reactor 2024.0.3 – 3rd Maintenance Release:

      • Qué trae: Actualizaciones a reactor-core 3.7.3, reactor-netty 1.2.3 y reactor-pool 1.1.2, junto con realineación a reactor-addons 3.5.2, reactor-kotlin-extensions 1.2.3 y reactor-kafka 1.3.23.

      • Enlace:
        🔗 Changelog Reactor 2024.0.3

    • Reactor 2023.0.15 – 15th Maintenance Release:

      • Qué trae: Actualizaciones a reactor-core 3.6.14, reactor-netty 1.1.27 y reactor-pool 1.0.10, manteniendo consistencia con los addons y extensiones mencionados.

      • Enlace:
        🔗 Changelog Reactor 2023.0.15

  • JHipster 8.9.0

    • Qué trae:

      • Actualizaciones de dependencias: Spring Boot 3.4.2, Node 22.13.1, Gradle 8.12.1, Angular 19.0.6 y Typescript 5.7.3.

      • Soporte para campos de tiempo (LocalTime) independientes en JHipster Domain Language (JDL).

    • Enlace:
      🔗 Release notes de JHipster 8.9.0

  • Gradle 8.13.0 – 1st Release Candidate

    • Qué trae:

      • Nueva utilidad de auto-provisioning que descarga automáticamente un JVM para el Gradle Daemon.

      • Configuración explícita de la versión de Scala en el plugin de Scala y precisión refinada en los timestamps de eventos de JUnit XML.

    • Enlace:
      🔗 Release notes de Gradle 8.13.0-RC1

💡 Tip en Java de la Semana: Optimiza el Rendimiento con ConcurrentHashMap

Utiliza los métodos atómicos de ConcurrentHashMap para reducir la contención y mejorar el rendimiento en aplicaciones concurrentes. Métodos como computeIfAbsent(), merge() y computeIfPresent() permiten actualizar la estructura de forma segura sin necesidad de bloqueos externos.

Ejemplo:

import java.util.concurrent.ConcurrentHashMap;

public class ConcurrentHashMapTip {
    public static void main(String[] args) {
        ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();

        // Inicializa la clave "clave" con un valor calculado de forma perezosa
        map.computeIfAbsent("clave", key -> expensiveOperation());

        // Actualiza el valor de la clave de forma atómica
        map.merge("clave", 1, Integer::sum);

        System.out.println("Valor actualizado: " + map.get("clave"));
    }

    private static int expensiveOperation() {
        // Simula una operación costosa
        return 42;
    }
}

Beneficios:

  • Actualización Atómica: Evita la necesidad de sincronización manual.

  • Reducción de Contención: Mejora el rendimiento en entornos altamente concurrentes.

  • Código más Limpio: Simplifica la lógica de actualización y manejo de datos compartidos.

¡Eso es todo por esta semana! Espero que disfrutes de estas actualizaciones, consejos y novedades, y que sigas comprobando que Java sigue siendo tan relevante y potente como siempre.
Nos vemos en la próxima edición con más noticias, tips y recursos para desarrolladores.

¡Feliz programación y que tengas una excelente semana! 🚀💻🎉

Ricardo

Reply

or to participate.