El método getLogger() de una clase Logger utilizaba para buscar o crear un registrador. Si existe un registrador con el nombre pasado, el método devolverá ese registrador; de lo contrario, el método creará un nuevo registrador con ese nombre y lo devolverá.
Hay dos tipos de método getLogger() dependiendo de ninguno de los parámetros pasados.
- getLogger(java.lang.String) : este método se utiliza para buscar o crear un registrador con el nombre pasado como parámetro. Creará un nuevo registrador si el registrador no existe con el nombre pasado. Si se crea un nuevo registrador mediante este método, su nivel de registro se configurará en función de la configuración de LogManager y se configurará para enviar también la salida de registro a los controladores de sus padres. Se registrará en el espacio de nombres global de LogManager.
Sintaxis:
public static Logger getLogger(String name)
Parámetros: este método acepta un único nombre de parámetro que es la string que representa el nombre del registrador. Este debe ser un nombre separado por puntos y normalmente debe basarse en el nombre del paquete o el nombre de la clase del subsistema, como java.net o javax.swing
Valor devuelto: este método devuelve un registrador adecuado.
Excepción: este método generará NullPointerException si el nombre pasado es nulo.
Los siguientes programas ilustran el método getLogger(java.lang.String):
Programa 1:// Java program to demonstrate
// Logger.getLogger(java.lang.String) method
import
java.util.logging.*;
public
class
GFG {
public
static
void
main(String[] args)
{
// Create a Logger with class name GFG
Logger logger
= Logger.getLogger(GFG.
class
.getName());
// Call info method
logger.info(
"Message 1"
);
logger.info(
"Message 2"
);
}
}
El resultado impreso en la consola se muestra a continuación.
Producción:Programa 2:
// Java program to demonstrate Exception thrown by
// Logger.getLogger(java.lang.String) method
import
java.util.logging.*;
public
class
GFG {
public
static
void
main(String[] args)
{
String LoggerName =
null
;
// Create a Logger with a null value
try
{
Logger logger
= Logger.getLogger(LoggerName);
}
catch
(NullPointerException e) {
System.out.println(
"Exception Thrown: "
+ e);
}
}
}
El resultado impreso en la consola se muestra a continuación.
Producción: - getLogger(String name, String resourceBundleName) : este método se utiliza para buscar o crear un registrador con el nombre pasado. Si ya se ha creado un registrador con el nombre dado, se devuelve. De lo contrario, se crea un nuevo registrador. Si el registrador con el nombre pasado ya existe y no tiene un paquete de recursos de localización, el nombre del paquete de recursos proporcionado se usa como paquete de recursos de localización para este registrador. Si el registrador nombrado tiene un nombre de paquete de recursos diferente, este método genera una IllegalArgumentException.
Sintaxis:
public static Logger getLogger(String name, String resourceBundleName)
Parámetros: Este método acepta dos parámetros diferentes:
- nombre : que es el nombre del registrador. Este nombre debe ser un nombre separado por puntos y normalmente debe estar basado en el nombre del paquete o el nombre de la clase del subsistema, como java.net o javax.swing
- resourceBundleName: que es el nombre de ResourceBundle que se usará para localizar mensajes para este registrador.
Valor devuelto: este método devuelve un registrador adecuado.
Excepción: este método arrojará las siguientes excepciones:
- NullPointerException: si el nombre pasado es nulo.
- MissingResourceException: si resourceBundleName no es nulo y no se puede encontrar ningún recurso correspondiente.
- IllegalArgumentException: si el registrador ya existe y usa un nombre de paquete de recursos diferente; o si resourceBundleName es nulo pero el registrador nombrado tiene un conjunto de paquetes de recursos.
Los siguientes programas ilustran el método getLogger(String name, String resourceBundleName):
Programa 1:
// Java program to demonstrate
// getLogger(String name, String resourceBundleName) method
import
java.util.ResourceBundle;
import
java.util.logging.*;
public
class
GFG {
public
static
void
main(String[] args)
{
// Create ResourceBundle using getBundle
// myResource is a properties file
ResourceBundle bundle
= ResourceBundle
.getBundle(
"resourceBundle"
);
// Create a Logger
// with GFG.class and resourceBundle
Logger logger
= Logger.getLogger(
GFG.
class
.getName(),
bundle.getBaseBundleName());
// Log the info
logger.info(
"Message 1 for logger"
);
}
}
Para el programa anterior, hay un nombre de archivo de propiedades resourceBundle. tenemos que agregar este archivo junto con la clase para ejecutar el programa.
Producción:
Referencias:
- https://docs.oracle.com/javase/10/docs/api/java/util/logging/Logger.html#getLogger(java.lang.String, java.lang.String)
- https://docs.oracle.com/javase/10/docs/api/java/util/logging/Logger.html#getLogger(java.lang.String)
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA