注:该文是本博主记录学习之用,没有太多详细的讲解,敬请谅解!
在Java项目里,每个JaveBean中我们都需要创建get/set方法,虽然idea中提供了快速构建get/set方法,但是每次增删改属性都需要维护它的get/set方法,特别麻烦。所以今天介绍Lombok插件,使我们平常在开发过程中提高效率,使JavaBean的代码可以至少省一半。
官网地址:/
打开官网,首页上有它的简介,如下:
Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.
Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate your logging variables, and much more.
翻译:Lombok是一个java库,可以自动插入编辑器并构建工具,为您的java增添色彩。
永远不要再写另一个getter或equals方法,使用一个注释,您的类具有一个功能齐全的构建器,自动化您的日志记录变量等等。
如上图所示,Lombok支持所有主流的 IDE 开发工具及编译构建工具,上图Bulid tool就是集成编译构建工具,IDEs就是各个ide开发工具的插件介绍。
因为本人使用的是Intellij IDEA,所以接下来介绍在IDEA中安装Lombok插件,使编译的时候不会报错。
点击上图的Intellij IDEA,跳转到官网的教程。
下面配上Intellij IDEA安装Lombok插件的教程…,因为我已经安装过Lombok插件,所以图下红色箭头之中的地方显示的是update按钮,如果未安装,这个按钮是绿色Install字样。
下面是 Maven 的依赖配置,在用 Maven 打包的时候也能自动生成需要的代码,在官网上点击
install–>maven。
<dependencies><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.6</version><scope>provided</scope></dependency>
</dependencies>
如果你使用了 Spring Boot,可以不用带版本号,在 Spring Boot spring-boot-dependencies.pom 这个配置文件里面定义了 Lombok 依赖。
所以,你只需要继承版本号即可,当然,有必要的话,你也可以自定义版本号。
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><scope>provided</scope>
</dependency>
在Lombok的包中我们可以看到所有支持的注解。
1、@Getter和@Setter
添加 @Getter 和 @Setter 注解用在 Java Bean 类上面,无需生成 get/ set 方法,会自动生成所有的 get/ set 方法及一个默认的构造方法。
2、@ToString
使用在类上,默认生成所有非静态字段以下面的格式输出。
public String toString(){return "User(userName=" + getUserName() + ", id=" + getId() + ", age=" + getAge() + ", address=" + getAddress() + ", memo=" + getMemo() + ")";
}
3、@NoArgsConstructor
使用在类上,默认生成一个无参的构造方法。
4、@RequiredArgsConstructor
使用在类上,使用类中所有带有 @NonNull 注解和 final 类型的字段生成对应的构造方法。
5、@AllArgsConstructor
用在类上,生成一个所有参数的构造方法,默认不提供无参构造方法。
6、@Data
用在类上,等同于下面这几个注解合集。
7、@Value
用在类上,等同于下面这几个注解合集。
8、@NonNull
用在属性上,用于字段的非空检查,如果传入到 set 方法中的值为空,则抛出空指针异常,该注解也会生成一个默认的构造方法。
9、@Log4j
用在类上,为类提供一个 属性名为log 的 log4j 日志对像
等同于:private static final org.apache.log4j.Logger log = org.apache.Logger(User.class);
10、@EqualsAndHashCode
用在类上,自动生成equals方法和hashCode方法
11、@Slf4j
@Slf4j跟Log4j一样,为类提供一个 属性名为log 的 Slf4j日志对像
等同于: private static final org.slf4j.Logger log = org.Logger(User.class);
=============================================
以上主要是讲解日常使用频繁的注解,还有更多注解,有兴趣的同学自行学习,谢谢!
附上Lombok api文档地址:.html
本文发布于:2024-02-08 13:41:51,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170737092667604.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |