基本介绍:
添加maven 依赖后,还需要添加Lombok 插件,插件这里就不介绍了,主要讲下注解@Cleanup
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
使用场景
当在处理
文件对象
,或者数据库资源
时,我们总是会忘记close,可能引发内存溢出。如果手动去调用close方法,代码又会非常长,@Cleanup可以很好的解决这个问题。
简单示例
package com.test;
import lombok.Cleanup;
/**
* 测试@Cleanup
*/
public class Test {
/**
* 状态
* true : 打开
* false : 关闭
*/
private boolean status;
public Test() {
this.status = true;
System.out.println("初始化,状态: "+this.status);
}
public void operation() {
System.out.println("业务操作...");
}
public void close() {
this.status = false;
System.out.println("关闭,状态: "+this.status);
}
//main方法测试
public static void main(String[] args) {
@Cleanup Test test = new Test();
test.operation();
//其他的业务
System.out.println("A业务处理...");
}
}
打印数据
初始化,状态: true
业务操作...
A业务处理...
关闭,状态: false
大家可以看到,加上@Cleanup注解后,当业务逻辑处理完后,会自动帮我们调用close()方法。默认情况下,清除方法为close(),如果要清理的对象类型没有close()方法,而是其他一些无参数方法,则可以指定此方法的名称,@Cleanup(“方法名称”)