如果我将@Builder添加到类中。创建了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
这里是可选的。
我想使用Lombok生成生成器,但我不确定这是否可行(我在文档中没有找到任何线索)。 默认情况下,Lombok生成builder,即此代码: 翻译为: 有没有办法在没有这个关键字的情况下生成构建器类?
问题内容: 我有一个重写版本discord.py。如果消息中包含内容,则不会发生错误。如果消息中内容不存在,则我希望该错误不会发生。 我的代码: 完整回溯: 问题答案: 命令解析参数的方式意味着定义 表示需要单词作为命令调用的一部分。如果您想捕获消息的其余部分,则可以使用仅关键字参数语法: 此功能在此处记录。
问题内容: 码: 忽略字符串中的其他内容(最小,最大和范围),但对于此行, 我收到一个错误: 必需:double [] 找到:无参数 为什么会出现此错误,我应该更改什么? 问题答案: 您以这种方式调用方法calculateAverage :,不带任何参数。但是方法是这样声明的: 因此,它需要一个type类型的参数,但是您什么也不传递。
不确定这件事可以完成,但我想创建一个新的子类,将父类和其他附加参数作为参数传递。 例如,如果我有: 对于lombo,有没有一个构建器让我创建一个子类,将父类和缺少的值作为参数传递? 如果我能写出这样的东西会更容易:
Lombok@builder不适用于继承用例: 手动创建条形图的构造函数。 将生成器批注放在该构造函数上。 有更好的变通办法吗?
问题内容: 我正在将Lombok项目与Spring Data JPA一起使用。有什么方法可以将Lombok 与JPA默认构造函数连接? 码: 据我所知,JPA需要默认的构造函数,该构造函数被注解覆盖。有什么解决方法吗? 这段代码给我错误: 问题答案: 更新 根据反馈和John的回答,我已更新了不再使用or的答案,而是通过和创建访问器和变量,通过创建默认构造函数via,最后我们创建了构建器通过via