@Builder注解的问题

来源:2-2 Lombok实战

无敌威威

2018-02-09

如果实体类有继承父类的话,@Builder注解在使用的时候找不到父类的字段,求解决!

@Getter
@Setter
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@TableName("ldms_sys_dept")
public class SysDept extends SuperEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 部门id
     */
    @TableId(value = "dept_id", type = IdType.AUTO)
    private Integer deptId;
    /**
     * 部门名称
     */
    private String deptName;
    /**
     * 上级部门id
     */
    private Integer parentId;
    /**
     * 部门层级
     */
    private String level;
/**
 * 部门在当前层级的顺序
 */
private Integer seq;
@Getter
@Setter
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SuperEntity implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * 状态 1正常 0 冻结 2 删除
     */
    private Integer status;
    /**
     * 备注
     */
    private String remark;
    /**
     * 创建时间
     */
    private Date createDate;
    /**
     * 更新时间
     */
    private Date updateDate;
    /**
     * 创建者
     */
    private Integer createBy;
    /**
     * 更新者
     */
    private Integer updateBy;


写回答

1回答

Geely

2018-02-12

你好,同学,这个是咱们课程里的源码吗?具体的提示报错是什么样。

Person.builder().name("Adam Savage").city("San Francisco").job("Mythbusters").job("Unchained Reaction").build()

build构造者模式使用的时候,首先要保证父类是有类似的public的命名的方法,简单的来说。我们可以使用反编译一下看看~~build注解之后的原理是什么样,虽然我没有使用过builder注解,但是会通过这个思路来检查这个模式是否可行~~

0
0

Java企业级电商项目架构 Tomcat集群与Redis分布式

Tomcat集群+Redis分布式+代码重构+源码原理解析

2685 学习 · 947 问题

查看课程