从@NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor开始了解Lombok插件

接触Lombok
@NoArgsConstructor, @RequiredArgsConstructor, @AllArgsContructor。是Lombok插件三种生成不同构造方法的注解,来完成项目中不同构造方法的需求。

@NoArgsConstructor : 生成一个无参数的构造方法
@AllArgsContructor: ?会生成一个包含所有变量
@RequiredArgsConstructor: 会生成一个包含常量,和标识了NotNull的变量的构造方法。生成的构造方法是私有的private。
主要使用前两个注解,这样就不需要自己写构造方法,代码简洁规范。
看Lombok注解的全貌
Lombok是一个通过注解形式帮助构造简洁、规范的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。 
下载地址: 
github地址:https://github.com/rzwitserloot/lombok 
官方地址:https://projectlombok.org/。 
官方API : https://projectlombok.org/features/all

在IDEA中使用它的过程
安装 


Maven项目引入lombok的jar

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.14</version>
</dependency>
常用注解介绍
@Getter and @Setter 
可以用@Getter / @Setter注释字段(也可以注释到类上的—(在实体类中常用且推荐)),lombok会自动生成默认的Getter/Setter方法。

@ToString 
自动生成toString()方法,默认情况,按顺序(以“,”分隔)打印你的类名称以及每个字段。也可以设置不包含哪些字段/@ToString(exclude = {“id”,”name”})

import lombok.ToString;
@ToString(exclude = {"id","name"})
public class User {
  private Integer id;
  private String name;
  private String phone;
}
实际生成的toString()方法
public String toString(){
  return "User(phone=" + phone + ")";
}
@Synchronized 
给方法加上同步锁,建议直接写在代码中Synchronized

猜你喜欢

转载自blog.csdn.net/xll_csdn/article/details/83305405