zoukankan      html  css  js  c++  java
  • 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 {
    ...
    }

  • 相关阅读:
    tab点击切换
    下拉收起
    倒计时
    边框三角形
    jQuery Easing 使用方法及其图解
    网址收藏
    Java遍历Map对象的四种方式
    idea初使用之自动编译
    Mysql 存储引擎中InnoDB与Myisam的主要区别
    spring-boot-devtools在Idea中热部署方法
  • 原文地址:https://www.cnblogs.com/passedbylove/p/11558701.html
Copyright © 2011-2022 走看看