java - 为我的项目创建类似 Slf4j 的注释

标签 java spring-boot oop annotations slf4j

我一直在尝试使用我的记录器复制 @Slf4j 注释,我在网上查看了有关使用注释的指南和信息,但无法弄清楚如何将注释用于此特定目的。

Slf4j 注解在被注解的类中创建一个记录器字段:

@Slf4j
public class Person {
   public void doThing() {
      log.info("logged a message"); 
      //log doesn't need to be defined in this class or instantiated manually. 
      //The annotation automatically does:
      //Logger log = Logger.getLogger(Person.class);
   }
}

如果我有自己的记录器,使用相同的方法 getLogger(String) 来实例化记录器,就像 Slf4j 一样,我如何创建一个注释“@MyLogger”来复制 Slf4j?

有关注释的更多信息: https://howtodoinjava.com/spring-boot2/logging-with-lombok/

有人可以提供一个为下面的记录器类创建此注释的示例类吗?我真的很困惑,无法让它发挥作用。

public class Logger {

    public static Logger getLogger(Class<?> test) {
        return new Logger(); //for test purpose (how logger should be inited)
    }

    public void info(String test) {
    }


}

最佳答案

@Slf4j 注释内置于 Lombok 中,因此您需要 implement your own annotation .

但是,如您所见,这并不是很简单,而且您可能仍然希望使用标准日志框架。

关于java - 为我的项目创建类似 Slf4j 的注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57890908/

相关文章:

php - PHP中的父对象

java - Hibernate 数据库连接自动限定用户名不正确

java - Android - 在 Backpress 期间处理 fragment

java - Spring Boot 如何做查看 PDF

java - 如何启用包含特定单词的 url 过滤器?

c++ - 做一个不能实例化的类?

c# - 从抽象集合中生成抽象集合

java - 使用忽略大小写的属性查找元素

java - 显示使用 java 在配置单元中创建表

java - 如何在 Spring Boot 中从 application.yml 获取 boolean 值