Lombok @Accessors注解

我们都知道lombok有好多好用的注解如@Data,@Setter,@Getter等,今天又学习到了另一种好用的注解它就是@Accessors,这个注解有啥用呢?就是支持链式编程。具体的应用请看下文。

package com.mrs.entity;

import java.util.Date;

import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

/**
 * 分类表(Category)表实体类
 *
 * @author makejava
 * @since 2022-08-06 12:57:31
 */
@SuppressWarnings("serial")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("sg_category")
@Accessors(chain = true)
public class Category implements Serializable{
    private static final long serialVersionUID = -14610653551033389L;

    @TableId
    private Long id;
    //分类名
    private String name;
    //父分类id,如果没有父分类为-1
    private Long pid;
    //描述
    private String description;
    //状态0:正常,1禁用
    private String status;
    
    private Long createBy;
    
    private Date createTime;
    
    private Long updateBy;
    
    private Date updateTime;
    //删除标志(0代表未删除,1代表已删除)
    private Integer delFlag;

}


可以看到上面的代码中已经包含了@Accessors(chain = true)这个注解,作用就是开启链式编程,这个时候你去看下面实体的结果发现所有的方法都由void变成了有返回值的,其中set方法最为明显,返回了这个实体类的对象,我们有了实体类的对象就可以链式编程下去了

演示

      Category category = new Category();
        //不使用@Accessors(chain = true)
        category.setStatus("2");
        category.setName("123");
        
        
        //使用了@Accessors(chain = true)注解
        category.setStatus("1").setName("123");
posted @ 2022-08-07 13:30  长情c  阅读(184)  评论(0)    收藏  举报