spring 里面 @builder注解的使用

2022-06-15 08:02:36 浏览数 (3)

目录

  • 1 什么是建造者模式
  • 2 实战
  • 3 @Builder的作用
  • 4 建造者使用过程:

1 什么是建造者模式

建造者模式简介:Builder 使用创建者模式又叫建造者模式。简单来说,就是一步步创建一个对象,它对用户屏蔽了里面构建的细节,但却可以精细地控制对象的构造过程。

2 实战

1 实体类,注解有@Builder

代码语言:javascript复制
import lombok.Builder;
import lombok.Getter;

@Builder
//@Getter
public class Person {
  private String name;

  private String id;

  private String phoneNumeber;
}

2 根据建造者模式创建对象

代码语言:javascript复制
public class Test {
  public static void main(String[] args) {


    Person.PersonBuilder builder = Person.builder();
    builder.phoneNumeber("11111")
        .id("1123")
        .name("asdd").build();
    System.out.println(builder);


  }
}

③编译并执行的结果为:

代码语言:javascript复制
Person.PersonBuilder(name=asdd, id=1123, phoneNumeber=11111)

3 @Builder的作用

生成一个全属性的构造器 生成了一个返回静态内部类PersonBuilder对象的方法 生成了一个静态内部类PersonBuilder,这个静态内部类包含Person类的三个属性,无参构造器,三个方法名为属性名的方法,返回Person对象的build方法,输出静态内部类三个属性的toString()方法。

4 建造者使用过程:

先实例化内部类对象并返回,然后为调用内部类的方法为内部类的属性赋值,build()方法就是将内部类PersonBuilder的属性值传入Person构造器中,实例化Person对象。

1 人点赞