Lombok插件使用

创建POJO类时,会让开发工具对域变量生成set,get方法,每个类都要做重复的生成操作,而且当变量名或者是修饰符改变了,就要删除set,get方法重新生成。为了不做重复工作呢,就可以使用lombok插件。

常用的 lombok 注解:

@Data :注解在类上;包含了@ToString,@EqualsAndHashCode,

@Setter:注解在属性上;为属性提供 setter 方法

@Getter:注解在属性上;为属性提供 getter 方法

@ToString:注解在类上;生成toString()方法,默认情况下,它会按顺序(以逗号分隔)打印你的类名称以及每个字段。可以这样设置不包含哪些字段@ToString(exclude = “id”) / @ToString(exclude = {“id”,“name”})

@EqualsAndHashCode:注解在类上;生成hashCode()和equals()方法,默认情况下,它将使用所有非静态,非transient字段。但可以通过在可选的exclude参数中来排除更多字段。或者,通过在parameter参数中命名它们来准确指定希望使用哪些字段。

@NonNull: 注解在属性上;标识属性是不能为空,为空则抛出异常。

@Slf4j :注解在类上;根据用户实际使用的日志框架生成log日志对象。

@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象

@NoArgsConstructor:注解在类上;为类提供一个无参的构造方法。当类中有final字段没有被初始化时,编译器会报错,此时可用@NoArgsConstructor(force = true),然后就会为没有初始化的final字段设置默认值 0 / false / null。对于具有约束的字段(例如@NonNull字段),不会生成检查或分配,因此请注意,正确初始化这些字段之前,这些约束无效。

@AllArgsConstructor:注解在类上;为类提供一个全参的构造方法

@RequiredArgsConstructor:注解在类上;会生成构造方法(可能带参数也可能不带参数),如果带参数,这参数只能是以final修饰的未经初始化的字段,或者是以@NonNull注解的未经初始化的字段@RequiredArgsConstructor(staticName = “of”)会生成一个of()的静态方法,并把构造方法设置为私有的。

我用的是IDEA工具,所以可以直接在Ssttings里下载

首先我们需要安装IntelliJ IDEA中的lombok插件,打开IntelliJ IDEA后点击菜单栏中的File–>Settings,或者使用快捷键Ctrl+Alt+S进入到设置页面。在这里插入图片描述
点击设置中的Plugins进行插件的安装,在右侧选择Browse repositories…,然后在搜索页面输入lombok变可以查询到下方的Lombok Plugin,鼠标点击Lombok Plugin可在右侧看到Install按钮,点击该按钮便可安装。
在这里插入图片描述在这里插入图片描述在这里插入图片描述

安装配置

maven引入依赖:

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

这样就可以了

下面贴个例子:


@Data
public class Category {

    private Integer id;
    private Integer parentId;

    private String name;
    private Integer status;

    private Integer sortOrder;
    private Date createTime;

    private Date updateTime;
//
//    public Integer getId() {
//        return id;
//    }
//
//    public void setId(Integer id) {
//        this.id = id;
//    }
//
//    public Integer getParentId() {
//        return parentId;
//    }
//
//    public void setParentId(Integer parentId) {
//        this.parentId = parentId;
//    }

注意添加@Data注解

下面这个是测试:

public class CategoryMapperTest extends MoilApplicationTests {
    @Autowired
    private CategoryMapper categoryMapper;
    @Test
    public void findById() {
        Category category= categoryMapper.findById(100001);
        System.out.println(category.toString());
    }
}

可以使用toString方法,即使实体类里没写

这边继承的MoilAppIicationTests类是因为里要继承类里面两个注解

@RunWith(SpringRunner.class)
@SpringBootTest
public class MoilApplicationTests {
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值