Einzelnen Beitrag anzeigen

Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Java, Hibernate: Persistieren eines Objektes in Oracle-D

  Alt 21. Jul 2006, 13:42
Zitat von Der_Unwissende:
@Chewie, Eine Frage zu deiner Funktion isDebugEnabled(), ist dass eine statische final die eine Konstante zurückgibt? Da würde ich dich dann nämlich auch gleich fragen, ob du zufällig weißt, ob Java die dann schon zum bedingten Kompilieren benutzen kann? Also wenn man direkt eine Konstante nimmt ist es ja klar, aber mit einer Methode (sollte zwar, dumm ist Java ja nicht...)
Du denkst zu weit isDebugEnabled() ist eine Methode der Commons Logging API von Apache, was ein Wrapper für verschiedene Logging-Frameworks darstellt. Die Logging-Konfiguration wird aber erst zur Laufzeit ermittelt, sodass das ein gewöhnlicher Methodenaufruf darstellt. In das Kompilat kommt die Abfrage also rein, man kann sie natürlich auch weg lassen, da log.debug() nur was schreibt, wenn das Level auf DEBUG steht. Von den Entwicklern wird die vorherhige Prüfung dann empfohlen, wenn sie im Vergleich zum Konstruieren der Logging-Ausagbe wesentlich weniger aufwändig ist. Ich schreib diese Abfrage aber grundsätzlich immer mit dazu, zumindest in nicht-zeitkritischen Sachen, weil man so den Logging-Aufruf weniger leicht übersieht.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat