Java 不带@Builder的Lombok@value的默认值
是否有一种方法可以为带有Java 不带@Builder的Lombok@value的默认值,java,jackson,lombok,Java,Jackson,Lombok,是否有一种方法可以为带有@value注释的模型下的字段提供默认值。 例如: @Value class Book { String title; List<String> authors; } 我可以覆盖所有参数的构造函数,但模型本身非常大,因此我正在寻找类似于Builder.Default的东西,但对于@Value您可以添加自己的构造函数来初始化作者字段 @Value @AllArgsConstructor static class Book { String ti
@value
注释的模型下的字段提供默认值。
例如:
@Value
class Book {
String title;
List<String> authors;
}
我可以覆盖所有参数的构造函数,但模型本身非常大,因此我正在寻找类似于
Builder.Default
的东西,但对于@Value
您可以添加自己的构造函数来初始化作者
字段
@Value
@AllArgsConstructor
static class Book {
String title;
List<String> authors;
public Book(String title) {
this(title, Collections.emptyList());
}
}
@Value
@AllArgsConstructor
静态教材{
字符串标题;
列出作者名单;
公共书籍(字符串标题){
这个(title,Collections.emptyList());
}
}
@allargsconstuctor
是必需的,因为在添加自定义构造函数时,@Value
跳过了所有字段构造函数的生成。您不想要@Builder
的原因是什么?@Builder
使用@Singular
就可以了。我一直在寻找一个线性解决方案,因为只有一个这样的字段是list。我必须使用的模型非常大,有很多级别的嵌套类,因为很多测试都是使用模型及其子代的allargsconstructor编写的,因此修改为builder非常困难
@Value
@AllArgsConstructor
static class Book {
String title;
List<String> authors;
public Book(String title) {
this(title, Collections.emptyList());
}
}