@AllArgsConstructor
@NoArgsConstructor
@Builder
@Getter
@Setter
public class CreateUserVo {
@NotBlank
private String name;
@Builder.Default
private String hobby = "GAME";
}
以上是一个VO类, 用于创建用户时接收参数, 其中 hobby 为选填, 当未指定 hobby 参数时, hobby 被设置为 "GAME" .
这个特性也可以用在 Entity 中, 从Database取值为空时, 设置默认值.
需要注意的是, @Builder.Default
依赖下面的注解:
@AllArgsConstructor
@NoArgsConstructor
@Builder
toBuilder
此时, 我们实例化对象: new CreateUserVo()
, hobby 依旧为空.
除了自己修改构造函数, 我们可以使用 Lombok 提供的:
@Builder(toBuilder = true)