JAVA全系列 教程
3762个小节阅读:7095.6k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
在上面的课程讲解过程中,每次修改类的属性,都需要重新生成Getter/Setter方法及toString()方法。我们可以借助Lombok来简化代码。
下载Lombok插件
IDEA 2022.3.2 默认集成Lombok插件,不需要单独下载。而且Lombok插件是不允许被卸载的。
启用注解处理
不启用注解处理,也能正常出结果。只是在第一次启动后,会在IDEA右下角提示,请启用注解处理。
IDEA菜单 File -> Settings
Lombok支持的注解比较多,可以从Lombok插件看到所有支持的注解。
我们挑选出一些常用的注解,先来看看@Data注解
在类上添加@Data注解
xxxxxxxxxx
@Data
public class Person {
private String name;
private int age;
}
测试生成的方法
可以使用属性的getter/setter方法。并且进入equals和hashCode()和toString()时是进入到Person类。而去掉@Data注解时是进入到Object类中,说明@Data也生成equals()和hashCode()和toString()方法。
xxxxxxxxxx
@Test
void testLombok(){
Person p1 = new Person();
p1.setName("smallming");
p1.setAge(18);
p1.getAge();
p1.getName();
p1.equals("");
p1.hashCode();
p1.toString();
}
默认情况下使用无参构造方法。但是Lombok支持3个对构造方法处理的注解。这三个注解只要使用任意一个,将不会在有默认的无参构造方法
@Getter和@Setter是类和属性注解。可以用在类上表示给所有属性都生成。如果用在某个属性上,表示只给这个属性生成。
给类生成包含所有属性的toString()方法,除非属性上包含@ToString.Exclude
Lombok支持市面上绝大多数日志。只需要在项目中引入对应日志的依赖。然后就可以在类中直接使用log对象。
不同的日志类型区别也就是log对象的类型不同:
使用时需要导入对应日志依赖。以log4j2举例。在项目中引入
xxxxxxxxxx
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.20.0</version>
</dependency>
在类中使用log对象(无论哪种日志类型),不再需要实例化。
xxxxxxxxxx
@Data
@Log4j2
public class Person {
private String name;
private int age;
public void test(){
// 直接使用log对象,不需要实例化
log.info("日志信息");
}
}