lombok--极度精简Java pojo代码的工具
2016-02-16 本文已影响413人
jarvan4dev
lombok极大的精简了Java pojo,使pojo只含有所需属性即可,不再需要getter/setter、toString()、Constructor等
- 直接上代码
未使用lombok
public class People {
private int id;
private String name;
private Date birthday;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public People(int id, String name, Date birthday) {
this.id = id;
this.name = name;
this.birthday = birthday;
}
}
- 使用lombok
import java.util.Date;
/** * Created by jarvan4dev on 16/2/16. */
@Data
public class People {
private int id;
private String name;
private Date birthday;
}
如何使用?
1、安装lombok插件(否则IDE无法识别,会一直报错)
Mac IDEA:Preference -> Plugins -> Browser repositories, 搜索lombok,选择Lombok plugin即可。其他ide请自己查找安装方法。
2、导入lombok.jar
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.6</version>
</dependency>
lombok 提供的注解不多,可以参考官方视频的讲解和官方文档。
Lombok 注解在线帮助文档:http://projectlombok.org/features/index.
下面介绍几个我常用的 lombok 注解:
@Data:注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
@Setter:注解在属性上;为属性提供 setting 方法
@Getter:注解在属性上;为属性提供 getting 方法
@Log4j:注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@NoArgsConstructor:注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor:注解在类上;为类提供一个全参的构造方法