>  Q&A  >  본문

호출될 때마다 선언하지 않고 Java에서 log4j를 사용하는 방법은 무엇입니까?

새 클래스를 작성할 때마다 다음과 같이 선언해야 합니다.

으아악

이거 많이 번거롭지 않나요? Logger를 정적으로 호출할 수 있는 클래스로 설정하고 정보, 오류 및 기타 메소드를 직접 호출하면서 동시에 현재 클래스, 스레드 번호 및 기타 정보를 인쇄할 수 있는 방법이 있습니까?

为情所困为情所困2712일 전604

모든 응답(3)나는 대답할 것이다

  • 漂亮男人

    漂亮男人2017-05-17 10:06:39

    Logger를 캡슐화하는 클래스를 구축하고 여러 정적 인터페이스를 노출하는 등 간단히 캡슐화하면 원하는 결과를 얻을 수 있습니다. 많은 코드가 private static Logger logger = Logger.getLogger(Test.class);으로 작성되는 이유는 실제로는 주로 로그의 유연성과 정확성을 향상시키기 위한 것입니다.

    회신하다
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-17 10:06:39

    이것을 보세요 /a/11...

    회신하다
    0
  • 漂亮男人

    漂亮男人2017-05-17 10:06:39

    log를 선언하세요. 다양한 로거 이름을 정의할 수 있고 level<과 같은 로거 이름을 통해 자신만의 출력 방법을 맞춤 설정할 수 있기 때문입니다. /code> 코드>, appender...etclog是因为他可以定义不同的logger name可以通过logger name定制自己的输出方式, 比如level, appender...等

    如果你的日志是以相同的方式处理那你完全可以声明公共的静态 log 对象, 需要的地方使用该log
    로그가 동일한 방식으로 처리되는 경우 공개 정적 로그 개체를 선언할 수 있습니다. 필요한 경우 로그를 사용하면 중복 선언이 발생하지 않습니다. 예:

    으아악

    물론 lombok을 사용하여 코드를 단순화할 수도 있습니다.

    회신하다
    0
  • 취소회신하다