@Builder
注解
是 Lombok 库中的一个非常有用的注解,它主要用于自动为你的类生成构建器(Builder)模式的代码。构建器模式是一种对象创建的软件设计模式,它允许通过链式调用方法来设置对象的属性,最后通过调用一个 build()
方法来创建并返回构建好的对象实例。
使用 @Builder
注解可以极大地简化代码,尤其是当你有一个包含多个属性的类时。你不需要手动编写大量的构造器、setter 方法和构建器类,Lombok 会为你处理这些。
以下是一个使用 @Builder
注解的简单示例:
import lombok.Builder;
import lombok.Data;
@Data // 通常与@Builder一起使用,提供getter和setter
@Builder
public class User {
private String name;
private int age;
private String email;
// 不需要编写任何构造器、setter或builder方法
// Lombok将在编译时自动生成它们
}
// 使用
public class Test {
public static void main(String[] args) {
User user = User.builder()
.name("John Doe")
.age(30)
.email("[email protected]")
.build(); // 这里创建并返回了User对象
System.out.println(user); // Lombok的@Data注解提供了toString方法
}
}
在这个例子中,@Builder
注解为 User
类生成了一个 UserBuilder
类(尽管你不需要直接引用它),它包含了一系列的 name()
, age()
, 和 email()
方法,每个方法都返回构建器本身,从而支持链式调用。最后,调用 build()
方法会创建并返回一个配置好的 User
对象实例。
注意,@Data
注解在这里也被使用了,它自动为你的类生成了 getter 和 setter 方法,以及 equals()
, hashCode()
, 和 toString()
方法。虽然 @Builder
可以独立使用,但通常与 @Data
或其他 Lombok 注解一起使用,以提供更全面的功能。
Lombok 是一个非常流行的 Java 库,它通过注解的方式自动为 Java 类生成样板代码,如 getter/setter、equals/hashCode/toString 方法、构造函数等,从而简化了 Java 类的编写。
标签:Builder,User,注解,Lombok,Data,setter From: https://blog.csdn.net/TheMilkyWayisbri/article/details/141606409