Java安装使用lombok插件自动生成GetterSetter方法教程

前言:本文讲解使用lombok插件为javaBean对象自动生成Getter和Setter方法,让代码看起来更加简洁,编写代码更加高效。

一.下载插件

下载地址:点击下载

二.安装插件

1.在Eclipse或Myeclipse中安装:

①.关闭Eclipse,仅将lombok.jar复制到eclipse.ini所在的文件夹目录下,不要双击运行lombok.jar。
②.打开eclipse.ini / myeclipse.ini,在最后面插入以下两行并保存:

-Xbootclasspath/a:lombok.jar
-javaagent:lombok.jar

③. 重启 eclipse 或 myeclipse即可。

2.在idea中安装:

①.添加插件Files->settings->plugins
②.点击按钮【Install JetBrains plugin…】
③.在新弹出的窗口,搜索lombok,右键安装即可。

三.常见问题解决

若出现注解后,Geter和Setter方法报错问题,即注解并没有生效的情况,可能是IDE(Eclipse、Idea)和lombok.jar版本不兼容,下载最新版的lombok.jar重新安装。重装时,直接覆盖jar包就可以,不用拆卸。

注:目前在Myeclipse 2017,JDK1.8下测试兼容。

四.使用方法

在maven下pom.xml中添加依赖:

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

1.一键省略Getter和Setter:

仅在java Bean类名上方添加一个注解@Data,就自动生成Getter和Sertter。

@Data
public class User {
    private int id;
    private String name;
    private String passWord;    
}
// 测试方法
    void test(){
        User user = new User();
        user.getId();
        user.setId(123);
        user.getName();
        user.setName("大脑补丁");
    }

2.仅使用getter方法(或Setter方法)

@Getter 注解生成Getter方法
@Setter 注解生成setter方法
添加在类名上方,全部字段都会自动生成该方法。

import lombok.Getter;

@Getter
public class User {
    private int id;
    private String name;
    private String passWord;


    // 测试方法
    void test(){
        User user = new User();
        user.getId();
        user.getName();
    }
}

3.仅在特定的字段上使用getter方法(或Setter方法)

添加在字段上方,仅该字段生成对应的方法。

import lombok.Setter;
import lombok.Getter;

public class User {
    private int id;
    @Setter
    private String name;
    @Getter
    private String passWord;


    // 测试方法
    void test(){
        User user = new User();
        user.setName("大脑补丁");
        user.getPassWord();
    }
}

五.其他注解:

  • @Data
  • @Setter @Getter
  • @Cleanup(释放字段中的资源,如关闭IO等)
  • @Synchronized(同步代码块)
  • @NonNull (字段非空)
  • @ToString (对象转为字符串,打印日志用)
  • @EqualsAndHashCode
  • @SneakyThrows (方法出现异常,抛出异常,代替throws Exception)

猜你喜欢

转载自blog.csdn.net/x541211190/article/details/80149718