A voir également:
- Formule en java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Formule si et - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule mathématique - Télécharger - Études & Formations
Y a l'idée mais c'est pas tout à fait ça.
récupère (ou créé si c'est la première fois) le logger identifié par le nom de la classe (dans une Map<String, Logger> ), cela permet donc de regrouper toutes les logs liées à cette classe (plutôt que se limiter à System.out et System.err)
écrit dans le logger sélectionné une log de niveau SEVERE avec un message null (ce que je déconseille) et en écrivant la stack trace de l'exception 'ex'
Au final c'est assez proche d'un ex.printStackTrace() mais avec un logger (méthode à privilégier même si ceux par défaut de Java ne sont pas terribles)
Généralement une log commence par l'heure à laquelle le message a été écrit, le niveau de la log (debug, info, error...) suivi éventuellement d'informations supplémentaires sur l'exécution comme le nom du thread, le nom de la classe et/ou de la méthode (voire le numéro de ligne de code), etc. sans oublier bien sûr le message en lui même.
Il est également possible de logger des exceptions en cas d'erreur mais c'est au choix du développeur de dire si une exception est grave ou non. Dans ton cas on considère que c'est une erreur sévère, c'est l'un des plus hauts niveaux d'erreur, si tu as une erreur sévère dans tes logs cela indique que certaines fonctionnalités sont indisponibles (la base de données dans ton exemple)
Remarque : les noms des niveaux de logs varient d'une librairie à une autre, c'est juste une indication pour classer tes messages.
Il peut par exemple être utile de rajouter des messages de debug, qui indiqueront pas à pas des messages sur le déroulement du programme. Sachant que l'on peut configurer le niveau de log minimum à afficher donc on peut switcher sur un mode plus ou moins verbeux selon les besoins.
package ccm; import java.util.logging.*; public class Test { private static final Logger LOG = Logger.getLogger("MyLogger"); public static void main(String[] args) { // info LOG.log(Level.INFO, "My info 1"); LOG.info("My info 2"); // warn LOG.warning("My warning 1"); LOG.log(Level.WARNING, "My warning 2"); // severe try { throw new Exception("My exception"); } catch (Exception e) { LOG.severe("My severe"); LOG.log(Level.SEVERE, "My severe", e); } } }Résultat :
Le résultat par défaut est moche mais c'est configurable, même si les loggers par défaut de Java ne sont pas les plus faciles à utiliser.