O Lombok é um framework para Java que permite escrever código eliminando a verbosidade, o que permite ganhar tempo de desenvolvimento para o que realmente é importante. Seu uso permite gerar em tempo de compilação os métodos getters e setters, métodos construtores, padrão builder e muito mais.
Exemplo básico
public class Pessoa{ private Long id; private String nome; private String email; private String senha; public Usuario(Long id, String nome, String email, String senha) { this.id = id; this.nome = nome; this.email = email; this.senha = senha; } public Pessoa() { } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getSenha() { return senha; } public void setSenha(String senha) { this.senha = senha; } @Override public String toString() { return super.toString(); } @Override public boolean equals(Object obj) { return super.equals(obj); } }
Esse é uma clássica básica e qualquer projeto, contudo se utilizarmos lombok teremos esse aspecto no código final:
import lombok.*; @Getter @Setter @EqualsAndHashCode @AllArgsConstructor @NoArgsConstructor public class Pessoa{ private Long id; private String nome; private String email; private String senha; }
Temos a mesma funcionalidade.
Processo de instalação no Eclipse
Instalar o plugin do Lombok no Eclipse é simples. Para isso primeiro precisa baixar o .jar do lombok no site ou no repositório maven. Para este caso vou baixar do repositório maven disponível no link:
Agora com o .jar do lombok baixado, dê um duplo clique para abrir e seguir a instalação.
Próximo passo é inserir o Lombok no projeto Java, no caso do Maven:
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.4</version> <scope>provided</scope> </dependency>
Clique sobre Run/Maven/ Install / Update e pronto. Reinicie o Eclipse e já vai poder usar o lombok em seus projetos
Outros exemplos de uso do Lombok
- Lombok @EqualsAndHashCode : Outro caso de uso é para gerar os métodos equals e hashCode apenas anotando com @EqualsAndHashCode.
- Lombok @ToString: Mais um caso de uso útil para gerar o método toString, apenas anotando a classe com @ToString.
- Lombok @Data: Se você quer que seu classe esteja completa, para simplificar, o Lombok fornece a anotação @Data. Esta anotação já fornece todos estes recursos
Conclusão
O Projeto Lombok é leve, prático e não exibe o código na cara como muitos outros fazem. Particularmente, constitui um projeto interessante que merece ao mínimo uma chance e a efetuação de testes. Casos de uso do projeto com outros frameworks como Hibernate, JPA e JSF comprovam que o mesmo foi bem recepcionado pela comunidade e pode ser aceito em projetos que você mesmo venha a trabalhar. Este artigo esta sua versão inicial ou seja irá sofrer alterações futuras. Existe muita coisa a falar sobre Lombok.
Referencias
- https://projectlombok.org/
- https://mvnrepository.com/artifact/org.projectlombok/lombok
- https://medium.com/collabcode/projeto-lombok-escrevendo-menos-c%C3%B3digo-em-java-8fc87b379209
- https://www.devmedia.com.br/uma-visao-sobre-o-projeto-lombok/28321
- https://www.baeldung.com/intro-to-project-lombok
Por Alex José Silva
Sou Analista de Sistemas e especialista em desenvolvimento de software com tecnologias abertas. Ao longo da minha carreira contribui na manutenção de sistemas para gestão empresarial em diversos tipos de segmentos: Hospitais, Mineradoras, Transportadoras e empresas de Logística em Cadeia de Mantimentos. Atuante em grupos de desenvolvedores no estado de Pernambuco: SalesForce, Chatbot Pernambuco, JUG-PE/Usuários Java de Pernambuco, Facebook Developer Circle Recife, GDG Recife, FEMUGPE - Front-End, IA_PE. Sou um experiente participante de Hackathons, GameJans e Startup Weekend. Acredito na cultura de inovação e empreendedorismo.
Faça parte da nossa comunidade!
Domine as tecnologias utilizadas pelas empresas mais inovadoras do mundo e encare seu novo desafio profissional, evoluindo em comunidade com os melhores experts.