How to use log4j in java without declaring it every time it is called?
为情所困
为情所困 2017-05-17 10:04:39
0
3
598

Every time you write a new class, you must declare it as follows:

private static Logger logger = Logger.getLogger(Test.class);  

Isn’t this very troublesome? Is there any way to set the Logger to a class that can be called statically, directly call the info, error and other methods, and at the same time print out the current class, thread number and other information?

为情所困
为情所困

reply all(3)
漂亮男人

You can simply encapsulate it to achieve what you want, such as building a class to encapsulate Logger and exposing several static interfaces. As for why many codes are written as private static Logger logger = Logger.getLogger(Test.class);, it is actually mainly to improve the flexibility and accuracy of logs.

给我你的怀抱

Look at this /a/11...

漂亮男人

Statementlog是因为他可以定义不同的logger name可以通过logger name定制自己的输出方式, 比如level, appender...etc

If your logs are processed in the same way, you can declare it公共的静态 log 对象, 需要的地方使用该logThere will be no duplicate declarations.
For example:

import static xxx.GlobalLogs.log;

log.debug("...");
log.info("...");
//...

Of course you can also use lombok to simplify your code.

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!