Spec-Zone.ru › OpenJDK 24

Класс XMLFormatter

java.lang.Object
java.util.logging.Formatter
java.util.logging.XMLFormatter
public class XMLFormatter extends Formatter
Форматирует LogRecord в стандартном формате XML.

Спецификация DTD приведена в приложении A к спецификации Java Logging APIs.

XMLFormatter может использоваться с произвольными кодировками символов, но рекомендуется использовать UTF-8. Кодировка символов может быть установлена в обработчике вывода.

Требования к реализации:
Начиная с JDK 9, экземпляры LogRecord содержат Instant, который может содержать наносекунды ниже миллисекундного разрешения. Спецификация DTD была обновлена для поддержки необязательного элемента <nanos>. По умолчанию XMLFormatter вычисляет наносекундную корректировку ниже миллисекундного разрешения (используя LogRecord.getInstant().getNano() % 1000_000) - и если она не равна 0, это значение корректировки будет напечатано в новом элементе <nanos>. Время события можно восстановить, используя Instant.ofEpochSecond(millis/1000L, (millis % 1000L) * 1000_000L + nanos), где millis и nanos представляют числа, сериализованные в элементах <millis> и <nanos> соответственно.
Элемент <date> теперь будет содержать всё время события в формате, отформатированном с помощью DateTimeFormatter.ISO_INSTANT форматера.

Для совместимости со старыми парсерами, XMLFormatters могут быть сконфигурированы для возврата к старому формату, указав свойство <xml-formatter-fully-qualified-class-name>.useInstant = false в конфигурации ведения журнала. Когда useInstant равно false, старый формат будет сохранён. Когда useInstant равно true (по умолчанию), элемент <nanos> будет напечатан, а элемент <date> будет содержать отформатированное время события.

Например, чтобы сконфигурировать обычные экземпляры XMLFormatter для пропуска нового элемента <nano>, java.util.logging.XMLFormatter.useInstant = false может быть указано в конфигурации ведения журнала.

Since:
1.4

Краткое описание конструкторов

Конструктор Описание
XMLFormatter()
Создаёт новый экземпляр XMLFormatter.

Краткое описание методов

Модификатор и тип Метод Описание
String format(LogRecord record)
Форматирует заданное сообщение в XML.
String getHead(Handler h)
Возвращает заголовок строки для набора записей, отформатированных в XML.
String getTail(Handler h)
Возвращает строку-подошву для набора записей, отформатированных в XML.

Методы, объявленные в классе java.util.logging.Formatter

formatMessage

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

XMLFormatter

public XMLFormatter()
Создаёт новый экземпляр XMLFormatter.
Требования к реализации:
Начиная с JDK 9, XMLFormatter будет выводить время события записи события в виде Instant. Это время имеет лучшее доступное на системе разрешение. Элемент <date> будет содержать время события в формате, отформатированном с помощью DateTimeFormatter.ISO_INSTANT. Кроме того, будет напечатан необязательный элемент <nanos>, содержащий корректировку наносекунд, если время события содержит наносекунды ниже миллисекундного разрешения.

Это новое поведение можно отключить, а старый формат восстановить, указав свойство в конфигурации ведения журнала. Если LogManager.getLogManager().getProperty( this.getClass().getName()+".useInstant") равно "false" или "0", старый формат будет восстановлен.

Подробное описание методов

format

public String format(LogRecord record)
Форматирует заданное сообщение в XML.

Этот метод может быть переопределен в подклассе. Рекомендуется использовать удобный метод Formatter.formatMessage(java.util.logging.LogRecord) для локализации и форматирования поля сообщения.

Specified by:
format в классе Formatter
Parameters:
record - запись журнала, которую нужно отформатировать.
Returns:
отформатированная запись журнала

getHead

public String getHead(Handler h)
Возвращает заголовок строки для набора записей, отформатированных в XML.
Overrides:
getHead в классе Formatter
Parameters:
h - целевой обработчик (может быть null)
Returns:
корректная строка XML

getTail

public String getTail(Handler h)
Возвращает строку-подошву для набора записей, отформатированных в XML.
Overrides:
getTail в классе Formatter
Parameters:
h - целевой обработчик (может быть null)
Returns:
корректная строка XML

Отправить сообщение об ошибке или предложить улучшение
Для получения дополнительной информации о справочнике API и документации для разработчиков, см. документацию Java SE, которая содержит более подробные описания для разработчиков с концептуальными обзорами, определениями терминов, обходными путями и примерами рабочего кода. Другие версии.
Java — товарный знак или зарегистрированный товарный знак Oracle и/или её филиалов в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её филиалы, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется лицензионными условиями и политикой перераспределения документации.
ПРОЕКТ 24-ea+36-Debian-1

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.logging/java/util/logging/XMLFormatter.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API