idea中Lombok的Buider构造器模式,getter/setter正确使用方法

Posted passedbylove

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了idea中Lombok的Buider构造器模式,getter/setter正确使用方法相关的知识,希望对你有一定的参考价值。

public class ApiUser  implements Serializable {
    private Long id;

    /***
     * 用户类型:single,org(organization)
     */
    private String type;

    private String loginName;
    /***
     * 身份证姓名/组织机构名称
     */
    private String name;
    /**
     * 身份证号码/营业执照号码
     */
    private String idNum;

    private String password;
    /***
     * 电话
     */
    private String cellphone;

    private Boolean cellphoneActived;

    private String email;

    private Boolean emailActived;

    /***
     * 余额
     */
    private Float balance;

    /***
     * 支付密码
     */
    private String paymentCode;

    /***
     * 省份id
     */
    private Integer provinceId;

    /***
     * 城市id
     */
    private Integer cityId;

    /***
     * 通讯地址
     */
    private String address;

    /***
     * 用户状态: inactive(0 default)
     *          actived(1)
     *          blocked(2)
     *          ...(其他待扩展用户状态类型)
     *          unknown(99)
     */
    private Integer status;


    private LocalDateTime createTime;
}

当然,在idea中使用之前你要安装Lombok插件,并在项目maven添加依赖

<dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.8</version>
</dependency>

技术图片

 

 

想要在内中生成getter/setter添加注解@Data

使用Builder构造器模式,添加@Builder

需要额外添加以下注解,缺一不可,否则会报错

 

@NoArgsConstructor
@AllArgsConstructor
报错信息:
构造器  应用到给定类型; 需要: 没有参数 原因: 实际参数列表和形式参数列表长度不同

 

使用方法:

 ApiUser user = ApiUser.builder().address("南京").balance(152.7f).email("172.@11.com").build();

错误的使用方法:(此处的builder方法在idea中红色显示,没有办法正常调用

参考来源:https://blog.csdn.net/triste_who/article/details/90609484

 ApiUser user = new ApiUser.builder()

完整注解如下:

@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ApiUser {
...
}

技术图片

 

技术图片

 

以上是关于idea中Lombok的Buider构造器模式,getter/setter正确使用方法的主要内容,如果未能解决你的问题,请参考以下文章

idea 安装 lombok插件

lombok idea gradle @AllArgsConstructor(staticName = "of")找不到符号

Builgen 插件——IntelliJ IDEA和Eclipse Java Bean Builder模式代码生成器-比lombok更符合需求

lombok 工具类的介绍

lombok中的builder注解居然是一种设计模式:让我们了解一下超级实用的“建造者模式”吧

Lombok的使用