编写java程序推荐一个好的定义log的方式——lombok

来源:互联网 发布:机器人编程 招聘plc 编辑:程序博客网 时间:2024/06/05 14:12

一般情况下我们使用log4j或者slf4j定义一个log会这样写:private static final Logger log = Logger.getLogger(getClass());

今天在开源社区看到一种写法更为简洁

在class上引入注解@Slf4j即可直接使用.

如:

@Slf4jpublic class SectionVO {    public SectionVO() {        log.info("I'm sectionVO : {}", toString());    }}
反编译SectionVO.class发现自动生成了

private static final Logger log = LoggerFactory.getLogger(SectionVO.class);

这个就很方便了.

那其实@Slf4j这个注解来自于lombok这个包,

仔细研究发现这个包还提供另外一些非常实用,可以大大简化代码的注解

比如 :

 @Data   :注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法

 @Setter:注解在属性上;为属性提供 setting 方法

 @Getter:注解在属性上;为属性提供 getting 方法

 @Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象

 @NoArgsConstructor:注解在类上;为类提供一个无参的构造方法

 @AllArgsConstructor:注解在类上;为类提供一个全参的构造方法

……

更多用法可以参考官方文档 https://projectlombok.org/features/index.html

这是Maven仓库地址:http://mvnrepository.com/artifact/org.projectlombok/lombok

官网主页上还有一个视频简介也演示的比较详细:https://projectlombok.org/


注:如果使用Idea,低版本可能不支持lombok,需要安装lombok插件,直接在Plugins里面搜索lombok安装就好

0 0