java.util.logging.Logger.log() 是责任链模式吗?如果是,日志方法调用如何链接到下一个调用?
最佳答案
这是相关的code :
// Post the LogRecord to all our Handlers, and then to
// our parents' handlers, all the way up the tree.
Logger logger = this;
while (logger != null) {
Handler targets[] = logger.getHandlers();
//...
if (!logger.getUseParentHandlers()) {
break;
}
logger = logger.getParent();
}
}
正如您所看到的,每个日志记录都会传递给分配给给定记录器的每个 Handler
,并且,如果 useParentHandlers
为 true
,则相同算法应用于父级一直到顶部。
所以本质上这是一个责任链模式,链中的每个元素都可以处理请求的一部分。
关于java - java.util.logging.Logger.log() 是责任链模式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6545777/