lombok用法总结一下
为什么用这个东西,可以给我们带来什么样的便利
最近正在练习一个项目,用到了lombok,查了查百度。对这个玩意有了更多的了解。
介绍:lombok是一个编译级别的插件,它可以在项目编译的时候生成一些代码。在很多工具类的项目中都有这个功能。
换句话说,lombok可以通过注解来标示生成getter、settter、hascode、equals等代码。以前使用idea的时候都是用Alt+insert来快捷生成这些东西。使用了lombok之后就可以用@Data来一行注解,来实现上边一系列的操作。
首先需要在依赖中添加:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.6</version>
<scope>provided</scope>
</dependency>**
在IDEA下载对应的插件
优点:方便了开发,而且减少了代码量。
缺点:1.对于不熟悉这个玩意的人不太友好,缺少必要的代码可能会让人陷入迷惑。使得可读性降低。
2.不支持多种参数构造器的重载
常用方法
我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:
- @Data 注解在类,生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。
- @Setter 注解在类或字段,注解在类时为所有字段生成setter方法,注解在字段上时只为该字段生成setter方法。
- @Getter 使用方法同上,区别在于生成的是getter方法。
- @ToString 注解在类,添加toString方法。
- @EqualsAndHashCode 注解在类,生成hashCode和equals方法。
- @NoArgsConstructor 注解在类,生成无参的构造方法。
- @RequiredArgsConstructor 注解在类,为类中需要特殊处理的字段生成构造方法,比如final和被 @NonNull注解的字段。
- @AllArgsConstructor 注解在类,生成包含类中所有字段的构造方法。.
- @Slf4j 注解在类,生成log变量,严格意义来说是常量。private static final Logger log = LoggerFactory.getLogger(UserController.class);