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());
    }
}