Java开发工具-lombok的介绍和使用
程序员文章站
2022-05-20 09:39:36
...
Lombok 是一种 Java™ 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO),通过注解实现这一目的。
在一般情况下,我们通常将一个类中的各个属性设置getter和setter等函数,如下所示(getter和setter):
public class User {
private int id;
private String name;
private String pwd;
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 String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
很明显,我们的代码量由于getter和setter方法而变得冗余,这不是我们希望看到的。那么,利用java的注解机制,就可以很完美的解决这个问题,这就是lombok工具包要实现的目的。lombok工具包的使用如下:
import lombok.Data;
@Data
public class User {
private int id;
private String name;
private String pwd;
}
通过@Data注解,这个类就可以自动生成这些方法(getter、setter和constructor等等)。当然,@Data是一种粗粒度的注解,lombok也提供了很多细粒度的注解方式,如下:
- field注解:@Getter,@Setter
- 类注解:@ToString,@AllArgsConstructor
lombok是一个项目要依赖的jar包,我们可以通过IDEA中的pom.xml对其进行自动配置,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>SpringLearning</artifactId>
<groupId>org.example</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>spring-mybatis</artifactId>
<dependencies>
<!--添加lombok依赖包-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.10</version>
</dependency>
</dependencies>
</project>
lombok也是IDE的一个插件,在编译器编译时通过操作AST(抽象语法树)改变字节码的生成。lombok不像spring中的依赖注入是运行时的特性,而是编译时的特性。
上一篇: 点评前端开发工具cortex安装使用方法
下一篇: Spring Boot 开发工具的使用
推荐阅读
-
Hadoop学习(7)-hive的安装和命令行使用和java操作
-
基于B-树和B+树的使用:数据搜索和数据库索引的详细介绍
-
Android Retrofit的简单介绍和使用
-
insert into select和select into的使用和区别介绍
-
Java开发工具Eclipse使用技巧全局搜索和更替
-
AMD异步模块定义介绍和Require.js中使用jQuery及jQuery插件的方法
-
rootkit的检测工具使用介绍(chkrootkit和rootkit hunter)
-
Java规则引擎Easy Rules的使用介绍
-
纯Python开发的nosql数据库CodernityDB介绍和使用实例
-
详解java中的深拷贝和浅拷贝(clone()方法的重写、使用序列化实现真正的深拷贝)