什么是lombok
什么Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。官方地址:https://projectlombok.org/,github地址:https://github.com/rzwitserloot/lombok。
简单来说就是使用注解,来代替一些重复性代码,以此达到简化代码的目的。
如何使用
只需要引入一个依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
和安装一个idea 插件即可,插件名叫:lombok plugin
这段代码是我用mybatis plus生成的,其中用到了lombok。
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class Plugin extends BaseEntity {
private static final long serialVersionUID = 1L;
private Integer id;
private Integer vid;
private Integer uid;
private String title;
private Integer state;
private Integer category;
private String tags;
private String code;
private String description;
private LocalDate createTime;
}
里面没有写任何的getter setter tostring 和构造方法等有重复性的代码,而是使用了lombok的一个@Data注解,这个注解的作用就是生成getter setter 等方法。
当安装好插件后,再来调用这个类的实例,就能找到一些本来没有写进去的方法
常见注解
@Setter
@Getter
@Data
@Log(这是一个泛型注解,具体有很多种形式)
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode
@NonNull
@Cleanup
@ToString
@RequiredArgsConstructor
@Value
@SneakyThrows
@Synchronized