Red de conocimiento informático - Material del sitio web - Cómo personalizar el banner de Spring Boot

Cómo personalizar el banner de Spring Boot

El orden predeterminado en el que Spring Boot busca banners es:

Busque los archivos banner.gif, banner.jpg y banner.png en Classpath y use el archivo encontrado primero

Continuar en Classpath Encuentre banner.gif y banner.jpg a continuación. txt,

Si no se encuentra el archivo anterior, se usa el SpringBootBanner predeterminado, que es el archivo que usamos con más frecuencia

Dado que es un recurso Classpath, lo usaremos de acuerdo a Maven. Si no puede encontrar los recursos anteriores, utilice nuestro SpringBootBanner predeterminado más común

Dado que es un recurso Classpath, seguiremos la convención de los proyectos Maven para colocar los archivos banner.* en src/main/. recursos/directorio.

Podemos usar la propiedad banner.location para configurar Spring Boot para que busque archivos banner.txt en diferentes Classpaths. La propiedad banner.charset se utiliza para configurar el juego de caracteres de banner.txt. El valor predeterminado es UTF-8. La propiedad banner.image.location se utiliza para especificar la ubicación para encontrar el archivo banner.txt (gif|jpg|png).

Si hay una imagen (como banner.jpg) y un banner.txt, se mostrarán al mismo tiempo, mostrándose primero la imagen y luego el texto. Sin embargo, si hay varias imágenes en banner.jpg y banner.png al mismo tiempo, solo se mostrará la primera imagen.

A continuación se describen banners de imágenes, banners de texto y métodos de personalización de código. Los banners de texto solo deben agregarse a banner.txt en src/main/resources, que debería ser el más simple y práctico, seguido de un banner simple. imágenes.

Banner de imagen

Es posible que tengamos preguntas sobre cómo Spring Boot muestra el archivo banner.(gif|jpg|png) de imagen en la consola. Dado que nuestra consola solo se ocupa de mostrar caracteres, Spring Boot intentará convertir los tres archivos de imagen en representaciones de caracteres con colores AnsiColor.

Para ver qué tan bien ImageBanner de Spring Boot entiende las imágenes, intente colocar esta imagen en src/main/resources/,

y luego reinicie nuestro programa Spring Boot.

La conversión de imágenes a caracteres coloreados funciona bastante bien, pero, por supuesto, no puedes hacer que Spring Boot sea demasiado difícil, ya que si las imágenes fueran más ricas en color, sería un desastre. Para convertir imágenes en texto, pruebe el generador de banners oficial de Spring Boot.

Banner de texto

Si usa banner.txt para definir el banner, puede usar las siguientes variables en él

${application.version}.

, ${application.formatted-version} , ${spring-boot.version} , ${application.formatted-version}${spring-boot.version} , ${Ansi.NA}${Ansi.NAME} o $ {AnsiColor .NAME} , ${AnsiBackground.NAME} o ${AnsiColor .NAME} . ${AnsiBackground.NAME}, ${AnsiStyle.NAME}, ${AnsiStyle.NAME}${AnsiBackground.NAME}, ${AnsiStyle.NAME}, ${application.title} estos se pueden encontrar en el banner personalizado oficial de Spring Boot definido en.

Para conocer el uso de AnsiColor, AnsiStyle y AnsiBackground, consulte los códigos de escape ANSI de Wiki. Consulte sus respectivas clases org.springframework.boot.ansi.(AnsiColor|AnsiStyle|AnsiStyle) . Estas clases se utilizan para definir el color, estilo y color de fondo de los caracteres que se muestran en la consola.

Aquí está el banner.txt, que dice

${AnsiColor.RED}${AnsiStyle.ITALIC}Soy rojo y en cursiva ${AnsiStyle.NORMAL}${AnsiColor.DEFAULT }

$ {AnsiColor.BLUE}${AnsiBackground.YELLOW}Soy azul con un fondo amarillo ${AnsiBackground.DEFAULT}${AnsiColor.DEFAULT}

${AnsiColor. GREEN} está controlado por ${spring-boot.formatted-version}${AnsiColor.DEFAULT}. DEFAULT}

A continuación se muestra el banner correspondiente después de ejecutar la aplicación Spring Boot

Además, si no estamos satisfechos con el texto definido en banner.txt, o si no estamos satisfechos con banner.txt No satisfechos con la visualización pura del texto definido en , podemos convertir la cadena en una fuente artística de carácter especial, al igual que el banner predeterminado

Spring Boot, que tiene un término especial TAAG. (texto a

generador de arte ASCII). Hay muchos sitios web en línea que harán esto por usted, simplemente busque el texto en Google para obtener un generador de arte ascii. Para dar algunos ejemplos:

/software/taag/#p=displayamp; f=Jackyamp t=unmi.cc

/figletserver.html

/ online-tools/figlet-ascii/

h ttp://picascii.com/ Convertir imagen a ASCII

Convierte el texto que desees, pégalo en banner.txt, luego retoquelo con ${AnsiColor.NAME}.

Otras personalizaciones del banner

O puede personalizar completamente el banner a través del código

SpringApplication bootstrap = new SpringApplication(SampleController.class);

bootstrap.setBanner(new Banner() {

@Override

public void printBanner(Entorno ambiental, Classlt;?gt; aClass, PrintStream printStream) {

// Salida a printStream, toma propiedades del entorno

}

}

});

// setBannerMode ( Modo.LOG);

bootstrap.run(args);