Lombok es una librería que elimina el código repetitivo en Java mediante anotaciones. Con solo unas pocas líneas, puedes evitar escribir manualmente:
toString, equals, hashCodeSi alguna vez has sentido que escribir getters, setters y constructores es tedioso... ¡este artículo es para ti!
@Data import lombok.Data;
@Data
public class Usuario {
private String nombre;
private int edad;
}
¿Qué hace?
toString(), equals() y hashCode()¿Beneficio?
@NoArgsConstructor y
@AllArgsConstructor
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
@NoArgsConstructor
@AllArgsConstructor
public class Producto {
private String nombre;
private double precio;
}
¿Qué hacen?
@NoArgsConstructor crea un constructor sin argumentos@AllArgsConstructor crea un constructor con todos los argumentos¿Beneficio?
@Builder (Uno de los más poderosos) 💪🏼 import lombok.Builder;
@Builder
public class Cliente {
private String nombre;
private String email;
private int edad;
}
¿Para qué sirve?
Cliente cliente = Cliente.builder()
.nombre("Juan")
.email("juan@example.com")
.edad(30)
.build();
Comparación sin @Builder
Cliente cliente = new Cliente("Juan", "juan@example.com", 30);
Si tienes muchos atributos, los constructores normales pueden ser confusos y difíciles de leer.
@Builder lo hace más claro y flexible. 🙌
| Característica | Sin Lombok 😩 | Con Lombok 😍 |
|---|---|---|
| Getters y Setters | Escribes manualmente cada método | Se generan automáticamente |
| Constructores | Debes crearlos manualmente | @NoArgsConstructor y @AllArgsConstructor lo hacen por ti |
| Patrón Builder | Constructor largo y poco legible | @Builder lo hace limpio y fácil |
toString() y equals() |
Debes sobreescribirlos | @Data los genera solo con una línea |