Cómo cambiar el banner por defecto de Spring Boot

Por defecto, al arrancar una aplicación de Spring Boot, aparece un banner con el texto Spring Boot en arte ASCII. La verdad es que queda llamativo entre la aburrida consola del servidor, por lo que llama la atención. Este texto es sencillo de personalizar, para que aparezca el texto que queramos en el log de la aplicación al arrancarla.

Modificarlo es muy sencillo, simplemente modificando un fichero de texto. Además, vamos a ver una herramienta online para ayudarnos con el arte ASCII y no tener que hacerlo a mano.

  1. Diseña tu banner personalizado. Basta con abrir un bloc de notas y empezar a diseñar con el teclado. Aunque, a no ser que seas un artista o quieras algo muy único, lo más sencillo es recurrir a páginas que te lo pueden generar online, para que sólo tengas que copiar y pegar. Una de estas páginas es Online Spring Boot Banner Generator. Simplemente, tienes que introducir el texto que quieras y un subtítulo (opcional) y la aplicación hace todo el trabajo. Además, puedes seleccionar entre una lista de tipografías para elegir la que más se adapte al estilo que buscas.Ejemplo de Spring Boot Banner Generator Online
  2. Abre el directorio de tu proyecto Spring Boot y crea un fichero llamado banner.txt dentro de la carpeta src/main/resources Fichero banner.txt en spring boot
  3. Copia el banner generado en la web anterior y pégalo dentro del fichero banner.txt que acabas de crear en el paso anterior.
  4. Reinicia la aplicación Sptring Boot y observa la consola del log. Al iniciar, se mostrará tu banner en la consola.

Deshabilitar el banner de Spring Boot en la consola al arrancar

Si, en vez de cambiarlo, lo que queremos directamente es que no aparezca, también se puede configurar la aplicación Spring Boot para deshabilitar el banner en el arranque de tu aplicación. Además, esto se puede conseguir tanto desde los ficheros de configuración como desde el código de la aplicación. Vamos a ver ambas opciones.

Fichero de configuración

Spring Boot consulta la propiedad spring.main.banner-mode para determinar si debe mostrar el cartel o no. Bastaría con ponerlo a off (por defecto está a on).

application.properties

spring.main.banner-mode = off

De la misma manera, si estamos usando un fichero en formato yaml en vez de properties, quedaría de la siguiente forma:

application.yaml

spring:
  main:
    banner-mode: "off"

Programando en el código

Mediante el código, se trata de cambiar el valor de la propiedad igualmente, pero mediante la propiedad del objeto de tipo SpringApplication.

SpringBootBannerApp.java

package es.trellat;

import org.springframework.boot.Banner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringBootBannerApp {

    public static void main(String[] args) {
        SpringApplication app = new SpringApplication(SpringBootBannerApp.class);
        app.setBannerMode(Banner.Mode.OFF);
        app.run(args);
    }
}

Si estás usando SpringApplicationBuilder, quedaría así:

SpringBootBannerApp.java

package es.trellat;

import org.springframework.boot.Banner;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;

@SpringBootApplication
public class SpringBootBannerApp {

    public static void main(String[] args) {
        new SpringApplicationBuilder(SpringBootBannerApp.class)
                .bannerMode(Banner.Mode.OFF)
                .run(args);
    }
}

Deja un comentario

Pin It on Pinterest