In one of my last projects I used Project Lombok to reduce boilerplate code. Lombok provides some annotations to remove the noise from the java language.
How does it work
Lombok runs as as an annotation processor which handler modifies the AST (Abstract Syntax Tree) by injecting new nodes such as methods and fields. After the annotation processing stage, the compiler will generate byte code from the modified AST.
How do I use it
Getters and setters like:
private String name = "Jens";
public String getName(){
return name;
}
public String setName(String name){
this.name = name;
}
Can be replaced by the Lombok annotations:
@Getter @Setter private String name = "Jens";
Or replace the noisy initialization of a logger:
public class MyClass {
private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(MyClass.class);
public static void main(String... args) {
log.error("Log me tender, log me sweet, ...");
}
}
With a fancy annotation:
@Log
public class LogExample {
public static void main(String... args) {
log.error("Log me tender, log me sweet, ...");
}
}
There are a lot more lombok features. There is also a great tutorial. What lombok does is not very impressive when you look at just a single example. But it helps a lot to remove java syntax noise from your classes and focus on the important parts of your business logic. When you look at the @data example, you can imagine how much code you don’t have to write(generate), read and maintain with Lombok.
Installation
Lombok can be installed with maven or ivy or include the lombok.jar in you build path. You have to teach your IDE about Lombok. Double click on the lombok.jar to install it into eclipse. For IntelliJ there is plugin available. It can also be installed from the IntelliJ plugin repository.
Summary
No more java projekts without Lombok.
Information about Data protection