Unabhängig davon, ob es sich um java.util.logging, commons-logging, log4j oder sogar das neueste slf4j und Logback handelt, keine dieser APIs schlägt Methoden vor, wie etwa:
%Vor% Dabei ist format
eine Zeichenfolge, die mit Formatter
analysiert wurde. Stattdessen bleiben sie bei MessageFormat
.
Ich verstehe, dass es zu bestehenden Prototypen in Konflikt kommen würde, also warum nicht debugf()
oder ähnliches, aber warum gibt es keine solchen Methoden, die Formatter
sind so alt wie Java 1.5?
Ist es aus Leistungsgründen, Rückwärtskompatibilität ...?
(Beachten Sie, dass ich wirklich über Formatter
spreche, dh einschließlich Platzhaltern wie %s
, %02x
usw.)
slf4j tut es. Siehe Ссылка . Es ist einer der Hauptvorteile (für mich) von slf4j gegenüber log4j. Es vermeidet die Notwendigkeit von isDebugEnabled()
überall.
BEARBEITEN:
In der Dokumentation slfl4j wird erläutert, warum die Standardformatierung aus dem JDK nicht verwendet wird:
SLF4J verwendet eine eigene Formatierungsimplementierung, die sich unterscheidet von dem der Java-Plattform. Dies ist durch die Tatsache gerechtfertigt, dass Die Implementierung von SLF4J führt ungefähr 10-mal schneller aus, aber auf Kosten als nicht standardisiert und weniger flexibel.