Mac Eclipse安装lombok

  Lombok是一个能够经过注解的形式能够帮助消除一些必须可是显得很臃肿的Java代码的工具,经过使用对应的注解,能够在进行编译源码的时候生成对应的方法,好比类属性的get/set/toString()/类的构造方法等.java

  

下面记录一下在Mac Eclipse是如何安装Lombokapp

  一、下载相应的Jar包lombok.jar,下载地址:https://projectlombok.org/downloadeclipse

  二、将Lombok集成到Eclipseide

    (1)Lombok复制到Eclipse.app/Contents/Eclipse目录下;工具

      

    (2)将以下内容添加到eclipse.ini尾部ui

-javaagent:../Eclipse/lombok.jar
-vmargs -javaagent:lombok.jar

  三、重启Eclipse便可。spa

下面记录一下经常使用的注解  code

  一、在Maven项目中引入Lombok的Jarblog

<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.20</version>
    <scope>provided</scope>
</dependency>

  二、使用注解继承

@Data
public class User {
    
    private int id;
    
    private String userName;
    
    private Date birthday;
}

  
    @Setter 和 @Getter

    注解在属性上(固然也可使用在类上面)为属性提供 setting 方法,默认生成的方法是public的,若是要修改能够设置AccessLever。以下    

public class User {
    
    @Getter(AccessLevel.PRIVATE) @Setter private int id;
    
    @Getter @Setter private String userName;
    
    @Getter @Setter private Date birthday;

}

 

    @ToString

    注解在类上,生成toString()方法,默认状况下,它会按顺序(以逗号分隔)打印你的类名称以及每一个字段。能够这样设置不包含哪些字段@ToString(exclude="id"),若是有多个但是是@ToString(exclude={"id","name"}),若是有继承父类的化,可让其调用父类的toString(),如@ToString(calllSuper = true)     

@ToString(exclude = "id")
public class User {
    
    @Getter(AccessLevel.PRIVATE) @Setter private int id;
    
    @Getter @Setter private String userName;
    
    @Getter @Setter private Date birthday;
}  

  @NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor

  @NoArgsConstructor生成一个无参构造方法。当类中有final字段没有被初始化时,编译器会报错,此时可用@NoArgsConstructor(force = true),而后就会为没有初始化的final字段设置默认值 0 / false / null。对于具备约束的字段(例如@NonNull字段),不会生成检查或分配,所以请注意,正确初始化这些字段以前,这些约束无效。
  @RequiredArgsConstructor会生成构造方法(可能带参数也可能不带参数),若是带参数,这参数只能是以final修饰的未经初始化的字段,或者是以@NonNull注解的未经初始化的字段
  @RequiredArgsConstructor(staticName = "of")会生成一个of()的静态方法,并把构造方法设置为私有的
    @AllArgsConstructor 生成一个全参数的构造方法
  
  @Data
  同时生成@Getter @Setter @ToString @RequiredArgsConstructor等功能。
 
  @Synchronized
  给方法添加同步锁Synchronized
 
  更多参看官方文档  https://projectlombok.org/features/all
相关文章
相关标签/搜索