Учебное пособие по настройке баннера SpringBoot

Spring Boot

Введение

Следующий ЛОГОТИП отображается по умолчанию при запуске Spring Boot:

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.1.1.RELEASE)

На самом деле Spring Boot поддерживает возможность настройки логотипа.

Давайте посмотрим, как это достигается.

пока тыresourcesкаталог с именемbanner.txt,banner.gif,banner.jpgилиbanner.pngфайл, Spring Boot автоматически загрузит его как логотип, напечатанный при запуске.

  • Для текстовых файлов Spring Boot будет выводить их напрямую.
  • Для файлов изображений (banner.gif,banner.jpgилиbanner.png), Spring Boot преобразует изображение в символы ASCII, а затем выводит.

Переменная

Вы также можете использовать переменные в файле banner.txt для установки шрифтов, цветов и номеров версий.

Переменная описывать
${application.version} MANIFEST.MFверсия определена в . как:1.0
${application.formatted-version} MANIFEST.MFверсия определена в и добавитьvпрефикс. как:v1.0
${spring-boot.version} Весенняя загрузочная версия. как:2.1.1.RELEASE.
${spring-boot.formatted-version} версию Spring Boot и добавьтеvпрефикс. как:v2.1.1.RELEASE
${Ansi.NAME} (or ${AnsiColor.NAME}, ${AnsiBackground.NAME}, ${AnsiStyle.NAME}) ANSI цвета, шрифты. Для получения более подробной информации см.:AnsiPropertySource.
${application.title} MANIFEST.MFИмя приложения, определенное в .

Пример:

в проекте Spring BootresourcesДобавьте в каталог файл с именем banner.txt со следующим содержимым:

${AnsiColor.BRIGHT_YELLOW}${AnsiStyle.BOLD}
 ________  ___  ___  ________   ___       __   ___  ___
|\   ___ \|\  \|\  \|\   ___  \|\  \     |\  \|\  \|\  \
\ \  \_|\ \ \  \\\  \ \  \\ \  \ \  \    \ \  \ \  \\\  \
 \ \  \ \\ \ \  \\\  \ \  \\ \  \ \  \  __\ \  \ \  \\\  \
  \ \  \_\\ \ \  \\\  \ \  \\ \  \ \  \|\__\_\  \ \  \\\  \
   \ \_______\ \_______\ \__\\ \__\ \____________\ \_______\
    \|_______|\|_______|\|__| \|__|\|____________|\|_______|
${AnsiBackground.WHITE}${AnsiColor.RED}${AnsiStyle.UNDERLINE}
:: Spring Boot ::             (v${spring-boot.version})
:: Spring Boot Tutorial ::    (v1.0.0)

Примечание:${}Переменные для установки цвета шрифта не могут быть разделены символами новой строки или пробелами, иначе это не сработает, кроме последней переменной.

После запуска приложения консоль выведет следующий логотип:

Я рекомендую два веб-сайта, которые генерируют рисунки персонажей. Вы можете поместить сгенерированные строки в этот файл `banner.txt`:

настроить

application.propertiesКонфигурация, связанная с баннером в:

# banner 模式。有三种模式:console/log/off
# console 打印到控制台(通过 System.out)
# log - 打印到日志中
# off - 关闭打印
spring.main.banner-mode = off
# banner 文件编码
spring.banner.charset = UTF-8
# banner 文本文件路径
spring.banner.location = classpath:banner.txt
# banner 图像文件路径(可以选择 png,jpg,gif 文件)
spring.banner.image.location = classpath:banner.gif
used).
# 图像 banner 的宽度(字符数)
spring.banner.image.width = 76
# 图像 banner 的高度(字符数)
spring.banner.image.height =
# 图像 banner 的左边界(字符数)
spring.banner.image.margin = 2
# 是否将图像转为黑色控制台主题
spring.banner.image.invert = false

Конечно, вы также можете настроить его в файле YAML, например:

spring:
  main:
    banner-mode: off

программирование

По умолчанию Spring Boot регистрируетSpringBootBannerSingleton Bean отвечает за печать баннера.

Если вы хотите полностью настроить баннер, вы можете сделать это:org.springframework.boot.Banner#printBannerИнтерфейс для самостоятельной настройки баннера. прохождение этого знамени черезSpringApplication.setBanner(…)Внедрение метода в Spring Boot.

Пример

Пример исходного кода:spring-boot-banner

использованная литература