lombok可以实现的功能
新建一个类,相比把所有的GetSet方法写好,或者为了方便调试还写了tostring方法,hashCode等等,有一种插件可以有效的解决这些冗余的代码,那就lombok。
安装插件
无论idea还是eclipse使用lombok都是要做额外的操作的,仅仅是引入依赖是不行的。这里介绍idea安装lombok插件的步骤
点击File-->Settings-->Plugins或者按快捷键Ctrl+alt+S进入设置再选择Plugins,就可以看到下面的截图
接着搜索lombok插件
直接install接着重启idea即可。
添加依赖
<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
添加注解
在新建的类上可以添加@Getter或者@Setter注解默认实现GetSet方法,还有其他的很多注解可以用,这里呢我个人比较喜欢使用@Data注解。
常用的几个注解:
@Data : 注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法
@AllArgsConstructor : 注在类上,提供类的全参构造
@NoArgsConstructor : 注在类上,提供类的无参构造
@Setter : 注在属性上,提供 set 方法
@Getter : 注在属性上,提供 get 方法
@EqualsAndHashCode : 注在类上,提供对应的 equals 和 hashCode 方法
@Log4j/@Slf4j : 注在类上,提供对应的 Logger 对象,变量名为 log
代码展示
import lombok.Data;
@Data
public class LomnokDemo {
private String name;
private String age;
public static void main(String[] args) {
LomnokDemo lomnok = new LomnokDemo();
lomnok.setAge("23");
lomnok.getAge();
}
}
大概就能实现上述代码的效果,可以节省大量的代码,使实体类更加整洁。
@Slf4j额外日志功能
类上添加了@Slf4j就可以实现日志输出的功能,可以直接在方法中调用log.info输出日志;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Data
@Slf4j
public class LomnokDemo {
private String name;
private String age;
Logger logger = LoggerFactory.getLogger(LomnokDemo.class);
public void logdemo(){
logger.info("logger");
log.info("log");
}
}
如代码所示,用法与Logger logger = LoggerFactory.getLogger(LomnokDemo.class);是一致的,且能直接在方法中使用log.info()方法。