lombok中@builder注解的用法

在 Lombok 中,@Builder 注解用于简化构建器模式的使用。使用 @Builder 注解后,Lombok 会自动生成一个构建器类,用于创建带有多个属性的对象。

使用 @Builder 注解时,需要注意以下几点:

在要使用 @Builder 注解的类上添加 @Builder 注解。

需要使用 @Builder.Default 注解来指定属性的默认值。

构建器类会自动生成一个无参构造方法,通过该方法创建对象。

生成的构建器类会包含属性的 setter 方法,可以链式调用。

下面是一个使用 @Builder 注解的示例:

c 复制代码
import lombok.Builder;
import lombok.Getter;

@Getter
@Builder
public class Person {
    private String name;
    private int age;
    @Builder.Default
    private String gender = "unknown";
}

// 使用示例
Person person = Person.builder()
        .name("John")
        .age(25)
        .build();

在上面的示例中,@Builder.Default 注解用于设置 gender 属性的默认值为 "unknown"。然后,我们可以使用生成的构建器类 Person.builder() 创建 Person 对象,并通过链式调用的方式设置属性的值。最后,使用 build() 方法创建最终的对象。

使用 @Builder 注解可以简化创建带有多个属性的对象的过程,避免了手动编写构建器的繁琐代码。

相关推荐
想回家的一天2 小时前
ECONNREFUSED ::1:8000 前端代理问题
开发语言
cike_y2 小时前
Mybatis之解析配置优化
java·开发语言·tomcat·mybatis·安全开发
云老大TG:@yunlaoda3603 小时前
华为云国际站代理商TaurusDB的成本优化体现在哪些方面?
大数据·网络·数据库·华为云
TG:@yunlaoda360 云老大3 小时前
华为云国际站代理商GeminiDB的企业级高可用具体是如何实现的?
服务器·网络·数据库·华为云
Jay_Franklin4 小时前
SRIM通过python计算dap
开发语言·python
是一个Bug4 小时前
Java基础50道经典面试题(四)
java·windows·python
Slow菜鸟4 小时前
Java基础架构设计(三)| 通用响应与异常处理(分布式应用通用方案)
java·开发语言
消失的旧时光-19434 小时前
401 自动刷新 Token 的完整架构设计(Dio 实战版)
开发语言·前端·javascript
wadesir4 小时前
Rust中的条件变量详解(使用Condvar的wait方法实现线程同步)
开发语言·算法·rust
我是Superman丶4 小时前
《Spring WebFlux 实战:基于 SSE 实现多类型事件流(支持聊天消息、元数据与控制指令混合传输)》
java