gpt4 book ai didi

java - Lombok @Builder 的必需参数

转载 作者:IT老高 更新时间:2023-10-28 20:32:04 25 4
gpt4 key购买 nike

如果我添加 @Builder上课。生成器方法已创建。

Person.builder().name("john").surname("Smith").build();

我有一个需要特定字段的要求。在这种情况下,姓名字段是必需的,但姓氏不是。理想情况下,我想这样声明。

Person.builder("john").surname("Smith").build()

我不知道该怎么做。我尝试将 @Builder 添加到构造函数中,但没有成功。

@Builder
public Person(String name) {
this.name = name;
}

最佳答案

你可以通过 Lombok 注解配置轻松做到这一点

import lombok.Builder;
import lombok.ToString;

@Builder(builderMethodName = "hiddenBuilder")
@ToString
public class Person {

private String name;
private String surname;

public static PersonBuilder builder(String name) {
return hiddenBuilder().name(name);
}
}

然后像这样使用它

Person p = Person.builder("Name").surname("Surname").build();
System.out.println(p);

当然 @ToString 在这里是可选的。

关于java - Lombok @Builder 的必需参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29885428/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com