lombook安装以及在eclipse和idea上配置
一.安装
a.官网上的安装方法
1.点击Download!
2.点击确认下载
3.下载完成,双击打开,点击“open”即可
4.之后会自动找到你的IDE如Eclipse,点击“install/update”就完成了
如果没有自动识别你PC上的IDE,可用方法b。
b.手动安装
手动安装的方法在上面给出的开源项目中给出了,此处贴上:
在eclipse/myeclipse中安装
1.将 lombok.jar复制到myeclipse.ini / eclipse.ini所在的文件夹目录下
2. 打开 eclipse.ini / myeclipse.ini,在最后面插入以下两行并保存:
-Xbootclasspath/a:lombok.jar
-javaagent:lombok.jar3. 重启 eclipse / myeclipse
在 idea中安装:
1.添加插件Files->settings->plugins
2.点击按钮【Install JetBrains plugin...】
3.在新弹出的窗口,搜索lombok,在搜索到的lombok上右键安装就可以了
二.注释解释(http://jnb.ociweb.com/jnb/jnbJan2010.html)
@NonNull:消除空指针异常
@Cleanup:释放资源
@Getter/@Setter:注解在属性上,为属性提供get/set方法
@ToString:注解在类上,为类提供toString()方法
@EqualsAndHashCode:注解在类上,为类提供equals()和hashcode()方法
@Data:最常用的注解,注解在类上,作用是@ EqualsAndHashCode,@Getter,@Setter 和@ToString注解的集合
因其使用注解的形式,所以使用的时候要导入lombok.jar包,如果用maven的话,需在pom.xml中的<dependencies></dependencies>标签中加入:
- <dependency>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- <version>1.16.2</version>
- </dependency>
三.示例演示
用lombok前
用lombok后
对比Outline视图可知,加上lombok注解后,相应属性增加了相应注解提供的方法,简化了代码,并且界面更加简明。同时,如果需要修改属性时,也不用去修改相应的方法,减少了工作量。
四.可能出现的问题
笔者使用lombok时,是按方法b安装的,但是可能会出现eclipse的Generate Getters and Setters弹窗错误,如下:
二、eclipse安装Lombok
运行安装:
java -jar ${path}\lombok.jar
选择IDE所在路径点击Install/Update即可使用。
手动安装
1. 将lombok.jar复制到IDE所在的文件夹目录下
2. 打开eclipse.ini/myeclipse.ini,在最后面插入以下两行并保存:
-Xbootclasspath/a:lombok.jar
-javaagent:lombok.jar
3. 重启IDE
idea安装Lombok
安装后需要重启IDE
常用注解
@Data:注解在类上;提供类所有属性的getting和setting方法,此外还提供了equals、canEqual、hashCode、toString方法
@Setter:注解在属性上;为属性提供setting方法
@Getter:注解在属性上;为属性提供getting方法
@Log4j:注解在类上;为类提供一个?属性名为log的log4j日志对象
@NoArgsConstructor:注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor:注解在类上;为类提供一个全参的构造方法
示例
不使用Lombok
public class Person {
private String id;
private String name;
private String identity;
public Person() {
}
public Person(String id, String name, String identity) {
this.id = id;
this.name = name;
this.identity = identity;
}
public String getId() {
return id;
}
public String getName() {
return name;
}
public String getIdentity() {
return identity;
}
public void setId(String id) {
this.id = id;
}
public void setName(String name) {
this.name = name;
}
public void setIdentity(String identity) {
this.identity = identity;
}
}
使用Lombok
@Data
@Log4j
@NoArgsConstructor
@AllArgsConstructor
public class Person {
private String id;
private String name;
private String identity;
}