Jilt 是一个Java 注释处理器 ,用于自动生成实现 Builder 设计模式的类。
与同一领域的其他工具相比,Jilt 的“杀手级功能”包括:
-
支持构建器模式的类型安全(有时也称为分阶段、伸缩或步骤)变体。有关类型安全生成器模式的更多信息,请查看我 关于该主题的博客文章。
-
能够为任何类生成构建器,并且无需对目标类的源代码进行任何修改。
-
与其他注释处理器(最引人注目的是Lombok)的无缝互操作性。
Jilt 纯粹是一个代码生成器 - 它不会为您的代码添加任何开销,也不会添加任何运行时依赖项。
Lombok建造器的终极替代品
import org.jilt.Builder;
@Builder
public final class Person {
public final String name;
public final boolean isAdult;
public Person(String name, boolean isAdult) {
this.name = name;
this.isAdult = isAdult;
}
}
...Jilt 将生成以下 Builder 代码:
public class PersonBuilder {
public static PersonBuilder person() {
return new PersonBuilder();
}
private String name;
private boolean isAdult;
public PersonBuilder name(String name) {
this.name = name;
return this;
}
public PersonBuilder isAdult(boolean isAdult) {
this.isAdult = isAdult;
return this;
}
public Person build() {
return new Person(name, isAdult);
}
}