Java中的 Logger setParent() 方法及示例
一个Logger类的setParent()方法,用来设置这个当前Logger的父Logger。我们要设置的父Logger作为参数传入。当命名空间发生变化时,LogManager 使用此方法更新 Logger。
句法:
public void setParent(Logger parent)
参数:此方法接受一个参数parent ,它代表新的父记录器。
返回值:此方法不返回任何内容。
异常:如果存在安全管理器并且调用者没有 LoggingPermission(“control”),则此方法抛出SecurityException 。
下面的程序说明了 setParent() 方法:
方案一:
// Java program to demonstrate
// Logger.setParent() method
import java.util.logging.*;
public class GFG {
public static void main(String[] args)
{
// Create a logger1 using getLogger()
Logger logger1
= Logger.getLogger("com.java.core");
// Assign other package to logger
Logger logger2
= Logger
.getLogger("com.java.core.api");
// Set logger1 as parent to logger2
logger2.setParent(logger1);
// Print parent name
System.out.println("logger2 parent name = "
+ logger2
.getParent()
.getName());
}
}
输出:
在 Eclipse 的控制台上打印的输出如下所示 -
方案二:
// Java program to demonstrate
// Logger.setParent() method
import java.util.logging.*;
public class GFG {
public static void main(String[] args)
{
// Create a logger1 using getLogger()
Logger logger1
= Logger.getLogger(GFG.class.getName());
// Assign other package to logger
Logger logger2
= Logger
.getLogger(String.class.getName());
// Set logger2 as parent to logger1
logger1.setParent(logger2);
// Print parent name
System.out.println("logger1 parent name = "
+ logger1
.getParent()
.getName());
}
}
输出:
控制台输出上打印的输出如下所示 -
参考: https: Java Java.util.logging.Logger)