Java Spring Boot: simplificando el código Java con Lombok

2022-10-14 - Categorías: Java / Java Spring Boot
Spring-boot

Este es un post para hacer eco de una librería disponible para Java Spring Boot que nos simplifica el código fuente. Esta librería en concreto es bastante útil, porque te simplifica por ejemplo la creación de los clásicos getters y setters, el objeto log, la función toString, etc.. por ejemplo.

Aquí todas la anotaciones disponibles de la versión estable a fecha de hoy: https://projectlombok.org/features/

Cómo hacer funcionar las anotaciones de Lombok en nuestro proyecto Spring Boot

Lo primero de todo es añadir en las dependencias del proyecto la librería de Lombok. En el caso de Maven sería añadiendo lo siguiente de forma manual:

...
    <dependencies>
        ...
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.24</version>
            <scope>provided</scope>
        </dependency>
        ..
    </dependencies>
...

Por ejemplo, una clase de entidad, para usar JPA con Hibernate, para tener una tabla con servicios:

package com.empresa.entities;

import java.util.Date;
import java.util.UUID;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;

import lombok.Getter;
import lombok.Setter;

@Entity
public class Service {
    @Id
    @Column
    @Getter
    @Setter
    private UUID uuid;

    @Column
    @Getter
    @Setter
    private String type;

    @Column
    @Getter
    @Setter
    private String description;

    @Column
    @Getter
    @Setter
    private Date createdAt;

    @Column
    @Getter
    @Setter
    private String name;

    @Column
    @Getter
    @Setter
    private String imageName;

    @Column
    @Getter
    @Setter
    private Integer imageSize;

    @Column
    @Getter
    @Setter
    private Date updatedAt;

    @Column
    @Getter
    @Setter
    private String publicPhoneNumber;

    @Column
    @Getter
    @Setter
    private String publicEmail;

    @Column
    @Getter
    @Setter
    private String publicWebsite;

    @Column
    @Getter
    @Setter
    private String urlKey;
}

Las anotaciones de Lombok son los @Getter y @Setter. De Hibernate y JPA son las otras anotaciones @Id, @Column y @Entity. ¿Sencillo verdad?

Deja una respuesta

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

 

© 2024 JnjSite.com - MIT license

Sitio hecho con WordPress, diseño y programación del tema por Jnj.