Lombok插件
一、简介
Lombok项目是一个Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来消除Java类中的大量样板代码。仅五个字符(@Data)就可以替换数百行代码从而产生干净,简洁且易于维护的Java类。
二、使用
2.1 下载
IDEA中打开Settings
—>Plugins
—>搜索Lombok—>install
2.2 引入依赖
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.12</version>
<scope>provided</scope>
</dependency>
</dependencies>
2.3 在实体类上加注解
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
private int id; //id
private String name; //姓名
private String password; //密码
}
结果如图
2.4 常用注解
@Getter and @Setter
@FieldNameConstants
@ToString
@EqualsAndHashCode
@AllArgsConstructor, @RequiredArgsConstructor and @NoArgsConstructor
@Log, @Log4j, @Log4j2, @Slf4j, @XSlf4j, @CommonsLog, @JBossLog, @Flogger, @CustomLog
@Data
@Builder
@SuperBuilder
@Singular
@Delegate
@Value
@Accessors
@Wither
@With
@SneakyThrows
说明:
@Data:无参构造、get、set、toString、hashcode、equals
@AllArgsConstructor:有参构造
@NoArgsConstructor:无参构造
@ToString
@EqualsAndHashCode
@Getter and @Setter
三、Lombok的优缺点
优点:
- 能通过注解的行是自动生成构造器、getter/setter、equals、hashcode、toString等方法,提高了一定的开发效率
- 让代码变得更简洁,不用过多关注相应的方法
- 属性做修改时,也简化了维护这些属性所生成的getter/setter方法等
缺点:
- 不支持多种参数构造器的重载
- 虽然省去了手动创建getter/setter的麻烦,但是大大降低了源码的可读性和完整性,降低了阅读源码的舒适度